Dav*_*evy 2 javascript vue.js axios nuxt.js
假设我正在开发一个具有多个微服务的平台,Nuxt 前端服务就是其中之一。我在 nuxt 中间件(同时在服务器和客户端运行)中使用 Axios。在 nuxt 服务内部,API baseURL 是本地机器的内部调用,但从客户端来看,baseURL 当然是公共应用程序域。
我可以使用服务器的请求对象,或者配置文件,或者区分运行环境来解决。我提到的每个选项都可以工作,但现在我正在寻找不同客户端与服务器环境变量的最佳实践。
中间件文件:
import axios from 'axios'
export default function ({ route }) {
return axios.get('api/some-data');
}
Run Code Online (Sandbox Code Playgroud)
来自服务器的请求应该调用“ http://internal-service:SOME_PORT/api/some-data。
来自客户端的请求应调用“ http://my-domain.com/api/some-data。
我在写问题时找到了答案..
在nuxt.config.js文件中:
axios: {
baseURL: 'http://internal-service:5000',
browserBaseURL: 'http://my-domain.com' //can use environment variables to fill both..
},
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1537 次 |
| 最近记录: |