我正在创建一个密码重置组件,用户将在其中输入其电子邮件地址,如果该电子邮件存在,则会将重置电子邮件发送给该用户。重设的电子邮件包含一个URL,例如website.reset/{userId}/{token}
。
我不想将用户ID或令牌从后端发送到前端,以避免网络钓鱼。我需要的是用户单击链接并被路由到有效的URL。我想从URL中提取用户ID和令牌,然后将其插入“路由”页面
我希望我的路线从URL中读取信息并呈现为有效页面:
<Router primary={false}>
<UpdatePassword path="/password-confirm/:uid/:token" />
</Router>
我认为我需要向用户的UpdatePassword
组件中添加一个生命周期函数,当用户登陆website.password-confirm / 1234 / abc时,该组件会从URL GET
中添加参数。但是,我无法使它正常工作。
我的应用程序是否可能读取URL中的信息,还是需要事先获得该信息?
答案 0 :(得分:2)
您可以使用上面的代码行来获取参数值。
const { uid, token } = this.props.match.params