Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/445.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript React路由器动态路由导致fetch REST api调用出现问题_Javascript_Reactjs_React Router_Fetch - Fatal编程技术网

Javascript React路由器动态路由导致fetch REST api调用出现问题

Javascript React路由器动态路由导致fetch REST api调用出现问题,javascript,reactjs,react-router,fetch,Javascript,Reactjs,React Router,Fetch,对于具有动态路径的路由,在组件中调用RESTAPI时会出现问题 我的渲染函数包含: <Provider store={store}> <Router history={history}> <Route path="/" component={home}></Route> <Route path="page1" component={page1}></Route> <Route path="

对于具有动态路径的路由,在组件中调用RESTAPI时会出现问题

我的渲染函数包含:

 <Provider store={store}>
  <Router history={history}>
    <Route path="/" component={home}></Route>
    <Route path="page1" component={page1}></Route>
    <Route path="page2/:id" component={page2}/>
  </Router>
</Provider>
此呼叫向发出请求

但是,我使用

browserHistory.push('/page2/' + uuid)
现在什么时候开始

https://localhost:3000/page2/someuuid1234
我打了一个取回电话,但我的电话是打给

https://localhost:3000/page2/myendpoint
为什么我所有的rest呼叫都要附加第2页?这导致了404请求


我假设react路由器拦截这些呼叫,并监听更新路由。我想向发出请求并收到正常响应。

为什么不使用绝对url来获取
而不是相对url呢?正如上面提到的@azium。我不明白为什么不能为RESTAPI调用提供绝对路径。将它们分开将始终对您有利,因为如果明天您决定将API主机移动到另一个位置,您只需更改基本URL即可。我使用的是相对路径,因此可以灵活地适应本地和应用程序环境。如果我使用了绝对URL,那么代码是否只适用于特定的数据库服务器?我想让代码查看环境,不管它运行在哪台服务器上。@azium哦,我明白你和sumit在说什么了。你是说在我的浏览器历史通话中使用/page2。。是的,这对我很有用。为什么不使用绝对url来获取
而不是相对url呢?正如上面提到的@azium。我不明白为什么不能为RESTAPI调用提供绝对路径。将它们分开将始终对您有利,因为如果明天您决定将API主机移动到另一个位置,您只需更改基本URL即可。我使用的是相对路径,因此可以灵活地适应本地和应用程序环境。如果我使用了绝对URL,那么代码是否只适用于特定的数据库服务器?我想让代码查看环境,不管它运行在哪台服务器上。@azium哦,我明白你和sumit在说什么了。你是说在我的浏览器历史通话中使用/page2。。是的,这对我很有效。
https://localhost:3000/page2/myendpoint