Javascript axios剥离了URL路径的一些位

Javascript axios剥离了URL路径的一些位,javascript,axios,Javascript,Axios,我正在检查一段代码(由其他人编写),该代码使用axios向服务器发出简单的GET和POST请求 除了向服务器发出一个请求之外,一切似乎都很正常 在提出以下要求时 url = 'api/items'; axios.get(url).then(res => { // do some work }); 由于某种原因,URL路径的某些部分被剥离 上述请求应发送至 https://test.com/aaa/bbb/api/items 而不是 https://test.com/api/ite

我正在检查一段代码(由其他人编写),该代码使用axios向服务器发出简单的GET和POST请求

除了向服务器发出一个请求之外,一切似乎都很正常

在提出以下要求时

url = 'api/items';

axios.get(url).then(res => {
  // do some work
});
由于某种原因,URL路径的某些部分被剥离

上述请求应发送至

https://test.com/aaa/bbb/api/items
而不是

https://test.com/api/items
所有其他请求都可以正常工作(即
https://test.com/aaa/bbb/api/xxx
),但不是这个


可能的原因是什么?

您可以使用类似的方法

axios.defaults.baseURL = 'https://api.example.com/';
然后你可以使用

url = 'api/items';

axios.get(url).then(res => {
  // do some work
});
并向
https://api.example.com/api/items

您可能希望查看Global以获取更多信息

正如文档中提到的,您可以有多个实例,并为每个实例设置默认配置,如下所示:

// Set config defaults when creating the instance
const instance = axios.create({
  baseURL: 'https://api.example.com'
});

// Alter defaults after instance has been created
instance.defaults.headers.common['Authorization'] = AUTH_TOKEN;

原来API路径设置为
/API/items
,而不是
API/items


前面的
/
导致了问题。

代码是否设置了baseURL?执行
get
的示例页面是否有不同的URL?其他API调用是否相同?@Zesky基本URL似乎不相同set@NimeshkaSrimal是的,所有其他api都以相同的方式调用您在其他api调用中没有设置基本url吗?我的意思是,它们都是这样工作的?是的,我知道这一点,但我想知道为什么除了one@d-_-b它可以初始化每个模板中的每个axios实例,而不是初始化所有模板中使用的axios实例