我正在使用 React Router 制作一个多页应用程序,我正在使用 Node 作为后端。Node在3000端口工作,React在3001端口。我在前端(React)的package.json中设置了一个代理。我的 API 可以在 localhost:3000/api/ 上访问,所以我从前端(端口:3001)使用 axios 获取或发布如下所示:
axios.post('api/login/',{data........})
它从像 /item 或 /example http://localhost:3001/xxxxxx/这样的父路径完美运行 ......我可以在端口 3000 上访问我的 /api/login。
但是从像http://localhost:3001/another/ex/或http://localhost:3001/xxxxxx/example/这样的子路径......我在控制台中看到 get 或 post 请求被发送到http:// localhost:3001/xxxxxx/example/api/login 在这些情况下,代理无法正确重定向。
我找到了避免子路径的解决方案,但我想知道到底发生了什么以及解决方案是什么?
在此先感谢您的帮助!
<Router history={history}>
<NavBar history={history} refresh={this.state.refresh}/>
<Switch>
<Route exact path="/" render={(props) => <MainPage history=
{history} />}/>
<Route exact path="/item" history={history} component=
{ComponentX1} />
<Route exact path="/example" history={history} component=
{ComponentX2} />
<Route exact path='/another/ex' history={history} component=
{ComponentY1}/>
<Route exact path='/xxxxxx/example' history={history} component=
{ComponentY2}/>
</Switch>
<Footer/>
</Router>
我想了解正在发生的事情。