我已经在client.js中定义了如下路由,它工作正常,我需要传递一个JSON,所以我尝试传递作为查询参数。
<Router history={appHistory}>
<Route path="/" component={Login}></Route>
<Route path='/login' component={Login}></Route>
<Route path="/user" component={Home}></Route>
</Router>
在登录组件中,我将更改路径,如下所示
hashHistory.push({
pathname: '/user',
query: { JSONResp: JSON.stringify(result.data)}
});
它工作正常,我可以访问查询参数。
是否有任何选项可以从URL隐藏此查询值,而且我的JSON响应大小约为2MB,建议在查询参数中传递此数据。
答案 0 :(得分:0)
运行history.pushState(null,null,window.location.href.split('?')[0])
,请注意浏览器在调用pushState()后不会尝试加载此URL,但稍后可能会尝试加载URL,例如在用户重新启动浏览器之后