最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - Different baseURL for server and client API calls with axios & nuxt - Stack Overflow

programmeradmin0浏览0评论

Let's say I'm developing a platform with multi micro-services, and Nuxt frontend service is one of them. I'm using Axios inside a nuxt middleware (which is running in both server and client). inside the nuxt service, the API baseURL is an internal call in local machine, but from client-side, the baseURL is the public app domain off course.

I can solve it using the server's request object, or config files, or to distinguish the run environment. Every option i mentioned can work, but right now I'm looking for a best practice for different client vs. server environment variables.

the middleware file:

import axios from 'axios'

export default function ({ route }) {
  return axios.get('api/some-data');
}

request from server should call to "http://internal-service:SOME_PORT/api/some-data.

request from client should call to ".

Let's say I'm developing a platform with multi micro-services, and Nuxt frontend service is one of them. I'm using Axios inside a nuxt middleware (which is running in both server and client). inside the nuxt service, the API baseURL is an internal call in local machine, but from client-side, the baseURL is the public app domain off course.

I can solve it using the server's request object, or config files, or to distinguish the run environment. Every option i mentioned can work, but right now I'm looking for a best practice for different client vs. server environment variables.

the middleware file:

import axios from 'axios'

export default function ({ route }) {
  return axios.get('api/some-data');
}

request from server should call to "http://internal-service:SOME_PORT/api/some-data.

request from client should call to "http://my-domain./api/some-data.

Share Improve this question asked Aug 15, 2019 at 8:05 David Meir-LevyDavid Meir-Levy 2522 silver badges11 bronze badges
Add a ment  | 

1 Answer 1

Reset to default 12

I found the answer during writing the question..

inside the nuxt.config.js file:

  axios: {
    baseURL: 'http://internal-service:5000',
    browserBaseURL: 'http://my-domain.' //can use environment variables to fill both..
  },
发布评论

评论列表(0)

  1. 暂无评论