簡體   English   中英

使用來自服務器的URL與根不匹配的URL來反應路由器

[英]react router with url from server not matching root

我有一個快速服務器設置,可以將用戶重定向到以下URL。

http://localhost:3000/#/user/access_token=***refresh_token=***

我遇到的問題是它無法在前端找到路由。

快遞代碼如下所示

res.redirect('http://localhost:3000/#/user/' +
   querystring.stringify({
      access_token: access_token,
      refresh_token: refresh_token
}));      

然后在反應方面,我的代碼如下所示:

import React, { Component } from 'react';
import { Router, Route, Link, IndexRoute, hashHistory, browserHistory } from 'react-router'
import Home from './Home';
import Address from './User';

class App extends Component {
  render() {
    return (
      <Router history={hashHistory}>
        <Route path='/' component={Home} />
        <Route path="/user/:access_token/:refresh_token" component={User} />
      </Router>
    )
  }
}

我收到以下錯誤:

browser.js:49警告:[反應路由器]位置“ / user / access_token = xxx&refresh_token = xxx”與任何路由都不匹配

正如React Router的文檔所說,您無需在路由路徑定義中指定查詢參數: 官方示例

1)因此,如果您的鏈接是這樣的:

http:// localhost:3000 /#/ user / access_token?refresh_token = 123456

那么您的路線應如下所示:

<Route path="/user/access_token" component={User} />

2)如果您的鏈接是這樣的:

http:// localhost:3000 /#/ user?access_token =:access_token&refresh_token =:refres hh

那么您的路線應如下所示:

<Route path="/user" component={User} />

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM