浏览器路由器路径添加api请求

问题描述 投票:0回答:1

我有一个使用react-router-dom和axios的create-react-app 该应用程序包含一条路线

/view-details/:planId/:itemId

当应用程序导航到上述路径时,API 请求会带有上述前缀,如下所示

https://localhost:3000/view-details/1/api/details
相反,它应该是
https://localhost:3000/api/details

我还没有在 axios 中配置 baseURL,所以我假设它是空的。仅当浏览器路径中有参数时才会出现此问题。我相信问题不在于 axios 配置,因为某些图像还包含类似

https://localhost:3000/view-details/1/assets/img/img.png
而不是
https://localhost:3000/assets/img/img.png

的路径

下面是我的package.json

{
  “名称”:“我的应用程序”,
  “版本”:“0.1.0”,
  “私人”:真实,
  “代理”:“http://localhost:5000”,
  // 省略脚本、依赖项和不相关的设置
}

尝试过的解决方案: 更新了 package.json 中的

"homepage": "/"
-> 不起作用

所以,我不确定配置中是否缺少任何内容。

reactjs axios create-react-app
1个回答
0
投票

将是你的答案。

如果您指定像“/api/details”这样的相对 url,则请求的 url 将类似于

https://localhost:3000/view-details/1/api/details
。所以你应该将 url 设置为
api/details
.

© www.soinside.com 2019 - 2024. All rights reserved.