当前位置: 首页 > 知识库问答 >
问题:

更改axios的默认基url

萧韬
2023-03-14

我已经这样配置了我的axios

const axiosConfig = {
  baseURL: 'http://127.0.0.1:8000/api',
  timeout: 30000,
};

Vue.prototype.$axios = axios.create(axiosConfig)

在我的组件中,我作为

this.$axios.get('items').then()..

现在,上面的方法可以工作了,但是我想在不影响全局基本URL的情况下更改baseURL,这样在我的组件中,我就可以在没有APIendpoint的情况下简单地使用它

我已经试过了

this.$axios.baseURL = "http://127.0.0.1:8000";
this.$axios.get().. //this is still in api endpoint

我该怎么办?

共有3个答案

姬墨竹
2023-03-14
  1. 创建.env.development,.env.production文件,如果不存在,并添加APIendpoint,例如:VUE_APP_API_ENDPOINT='http://localtest.me:8000'
  2. 在main.js文件中,在导入后添加一行:axios.defaults.baseURL=process.env.VUE_APP_API_ENDPOINT

就这样。Axios默认的基本Url替换为特定于生成模式的API终结点。如果您需要特定的基址为特定的请求,这样做:

this.$axios({ url: 'items', baseURL: 'http://new-url.com' })
梅飞龙
2023-03-14

把我的两分钱放在这里。我想做同样的没有硬编码的URL为我的特定请求。所以我想出了这个解决办法。

要将'api'附加到我的baseURL,我将默认的baseURL设置为,

axios.defaults.baseURL = '/api/';

然后在我的特定请求中,在显式设置方法和url之后,我将baseURL设置为'/'

axios({
    method:'post',
    url:'logout',
    baseURL: '/',
   })
   .then(response => {
      window.location.reload();
   })
   .catch(error => {
       console.log(error);
   });
弘柏
2023-03-14

而不是

this.$axios.get('items')

使用

this.$axios({ url: 'items', baseURL: 'http://new-url.com' })

如果您没有通过方法:“XXX”,那么默认情况下,它将通过get方法发送。

请求配置:https://github.com/axios/axios#request-配置

 类似资料:
  • 问题内容: 从控制台运行应用程序时,Python存在许多“无法编码”和“无法解码”的问题。但是在 IDE中,默认字符编码设置为UTF-8,我很好。 我四处寻找设置默认编码的方法,有人说在启动时会删除该函数,因此我们无法使用它。 那么什么是最好的解决方案? 问题答案: 这是一个更简单的方法(黑客),可为你提供从中删除的功能sys: 不过,这并不是一件安全的事情:这显然是一个,因为有意将其从sysPy

  • 问题内容: 我将如何为所有实例设置默认字体。而不是分别为每个字体设置字体。 问题答案: 使用定义JLabel的默认字体: 通过:http : //coding.derkeiler.com/Archive/Java/comp.lang.java.help/2005-04/msg00395.html

  • 我正在我的Windows 10 PC上使用Visual Studio Code。我想将我的默认终端从Windows PowerShell更改为Ubuntu上的Bash(在Windows上)。 我该怎么做呢?

  • 问题内容: 尝试更改列的数据类型并设置新的默认值时遇到以下错误: 错误1064(42000):您的SQL语法有错误;检查与您的MySQL服务器版本相对应的手册,以在第1行的’VARCHAR(255)NOT NULL SET DEFAULT’{}’‘附近使用正确的语法 问题答案: 同样的第二种可能性(感谢juergen_d):

  • 在尝试更改列的数据类型并设置新的默认值时,我遇到以下错误: 错误1064(42000):您的SQL语法中有错误;查看与您的MySQL server版本相对应的手册,以了解第1行“varchar(255)NOT NULL SET DEFAULT”{}“附近使用的正确语法

  • 问题内容: 有没有办法更改String(byte [])构造函数使用的编码? 在我自己的代码中,我使用String(byte [],String)指定编码,但是我使用的是无法更改的外部库。 输出为: 我尝试更改系统属性,但是它不起作用。 问题答案: 您需要在启动JVM之前更改语言环境。看到: Java,错误ID 4163515 有些地方似乎暗示您可以通过在启动JVM时设置file.encoding