React Universal App:经过身份验证的API调用

时间:2017-03-13 12:13:40

标签: reactjs redux react-router isomorphic-javascript

我一直在构建一个React应用程序,使用redux进行状态管理。在线查看教程后,我能够构建一个具有登录/注销功能的漂亮应用程序。但是在刷新时,我得到了404.我意识到它是客户端渲染。所以,我添加了一个处理路由的快速服务器,进行服务器端渲染。

我要求数据提取的api需要身份验证。我用componentDidMount中的jwt标记调用api。它在客户端工作正常。

这是我的问题:

但是如果用户刷新页面,服务器将发送html骨架,然后客户端在componentDidMount中进行调用。数据提取可以在服务器端完成吗?如果是,我将如何获得令牌(来自浏览器的localStorage)?

1 个答案:

答案 0 :(得分:0)

您无法从浏览器localStorage获取数据,因为服务器无法访问浏览器。如果API需要访问令牌,那么您必须首先呈现页面,从localStorage获取令牌,然后才从API中获取数据。