侧边栏壁纸
  • 累计撰写 225 篇文章
  • 累计创建 275 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

axios中设置的baseURL与具体请求地址的处理逻辑解析

DGF
DGF
2024-06-18 / 0 评论 / 0 点赞 / 26 阅读 / 0 字

今天一个实习生问为何axios设置的baseURL不起作用,好像是被覆盖了,下面就大概说说为何会这样。

在 axios 中,当你为一个请求设置 baseURL 时,这个 baseURL 会作为所有后续请求的基础 URL。当你发起一个具体的请求时,如果该请求的 URL 是以 “/” 开头的相对路径,则 baseURL 会被添加到请求的 URL 前面,形成完整的请求 URL。

例如,如果你设置了 axios.defaults.baseURL = 'https://api.example.com/api/v1/',然后你执行以下请求:

axios.get('/users')

那么实际的 URL 会是 https://api.example.com/api/v1/users

但是,如果你请求的 URL 是一个完整的 URL(即包含了协议和域名),则 baseURL 不会被使用,请求将直接发送到指定的完整 URL。例如:

axios.get('https://other-api.com/users')

这种情况下,baseURL 不会影响请求的 URL,请求将会发送到 https://other-api.com/users

所以说,在 axios 中设置的 baseURL 会不会被覆盖,取决于你的 URL 是不是一个完整的 URL。

0

评论区