反应路由:使用id_token

问题描述

我在React中使用以下路由语句:

  <Switch>
     <Redirect from="/start" to="/xyz" />                            
     <Route path="/xyz" component={MyTab} />
     <Route exact path="**" component={NotFound} />
  </Switch>

现在,在浏览器中,我进入带有散列片段的 / start 路径。我观察到的是:

  • 当散列片段仅具有状态时 (例如http://localhost:3000/start#state=ABC),我最终进入了 MyTab符合预期。
  • 当散列片段同时具有 state id_token (例如http://localhost:3000/start#state=ABC&id_token=PQR),我最终进入 未找到,与预期不同

为什么第二种情况也以MyTab结尾?

解决方法

以下应为您工作:

 <Switch>
     <Route path="/start" component={MyTab} />                          
     <Route path="/xyz" component={MyTab} />
     <Route component={NotFound} />
  </Switch>