首页 > 解决方案 > 提供电子邮件链接以验证 React 应用程序中的电子邮件地址

问题描述

我创建并部署了一个应用程序,它在前端使用 React(包括 React Router),在后端使用 Express for Node JS。我创建了一个流程,用户注册该应用程序,然后发送一封电子邮件,其中包含一个链接以单击以验证他们的帐户。

当他们点击链接时,服务器端进程工作正常(即它更新 sql 数据库以确认电子邮件已被验证,并且用户被重定向到“https://www.deployed-app.com/verificationsuccess”)。在部署之前,这工作得很好,但现在它不再工作并且用户得到“无法获取/验证成功”。

我认为问题归结为:如何让服务器将重定向发送到特定的 React 组件?

在网上搜索了几个小时后,我不知道如何解决这个问题,并且非常感谢任何正确方向的帮助或指示。

我的 React 应用程序如下所示:

function App() {
  return (
    <Router>
    <div className="AppPage">
      <Nav/>
      <Switch>
        <Route path="/" exact component={LandingPage}/>
        <Route path="/about" exact component={About}/>
        <Route path="/login" exact component={Login}/>
        <Route path="/passwordreset" component={PasswordReset}/>
        <Route path="/account" component={Account}/>
        <Route path="/verificationsuccess" exact component={VerificationSuccess}/>
        <Route path="/verificationfail" exact component={VerificationFail}/>
        <Route path="/404" exact component={FourOhFour}/>
        <Route path="/notverified" component={NotVerified}/>
        <Route path="/registersuccess" exact component={RegisterSuccess}/>
        <Route path="/selectedBook" exact component={Book}/>
        <Route path="/plan/" component={ReadingPlanView}/>
        <Route path="/" component={FourOhFour}/>
      </Switch>
    </div>
    </Router>
  );
}

标签: node.jsreactjsexpressreact-router

解决方案


推荐阅读