我设置了快速服务器,将用户重定向到以下网址。
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警告:[react-router]位置 &#34; /用户/ =的access_token XXX&安培; refresh_token = XXX&#34;没有匹配任何路线
答案 0 :(得分:1)
正如React Router文档所说,您不需要在路径路径定义中指定查询参数:Official Example
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ħ
然后你的路线应该是这样的:
<Route path="/user" component={User} />