【问题标题】:Strapi email confirmation is not working properly. I click the link and nothing happensStrapi 电子邮件确认无法正常工作。我点击链接,没有任何反应
【发布时间】:2022-01-20 15:30:47
【问题描述】:

我在理解 Strapi 电子邮件确认应该如何工作时遇到问题。我明白了: http://0.0.0.0/auth/emailconfirmation?confirmation=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9

【问题讨论】:

    标签: email strapi password-confirmation


    【解决方案1】:

    eStrapi 有一个内置的电子邮件插件来处理这个问题,您还可以添加第三方电子邮件提供商。
    它的工作方式是 Strapi 发送一封电子邮件,其中包含附有哈希的链接。当您单击它时,它将转到 URL 中具有特定端点的 SERVER 主机,服务器将自动验证您的电子邮件。有一些步骤必须遵循:

    1. 在您的管理面板下转到:设置 -> 用户权限插件 -> 电子邮件模板为所有模板输入有效的发件人和回复电子邮件。
    2. 在用户权限插件 -> 高级设置 -> 启用电子邮件确认并在确认后添加重定向 URL。前任。 https://your-site.com/login
    3. 在用户权限插件 -> 角色 -> -> 公共 -> 用户权限 -> 身份验证 -> sendEmailConfirmation 下选中。
    4. 在 config --> env --> production -> server.js 下创建此文件夹结构并将其粘贴到文件中:

      module.exports = ({ env }) => ({
        host: env('HOST'),
        port: env.int('PORT'),
        url: env('BACKEND_URL'),
    });
    1. 然后在 config -> server.js 下的代码中确保添加 url 键。

      module.exports = ({ env }) => ({
              host: env('HOST'),
              port: env.int('PORT'),
              url: env('BACKEND_URL_LOCAL'),
            });

    在您的 .env 变量中添加您的服务器 url 用于托管和本地,确保您为正确的环境设置了 NODE_ENV:

        BACKEND_URL=https://my-app.herokuapp.com
        BACKEND_URL_LOCAL=http://localhost:1337
        # NODE_ENV=production
        NODE_ENV=development
    

    测试您的服务后端以及本地。您的完整 url 字符串应如下所示:

    本地 -> http://localhost:1337/api/auth/email-confirmation?confirmation=6d3a77679db63a94c16307ae133d9373b23c3986

    托管 -> https://my-app.herokuapp.com/api/auth/email-confirmation?confirmation=738a515de684eb58dfb5e4aaa7fe7a9f35aa32454

    确保 /api 在两个链接中。

    【讨论】:

      猜你喜欢
      • 2020-08-06
      • 2019-07-10
      • 2012-07-12
      • 1970-01-01
      • 1970-01-01
      • 2021-05-16
      • 2020-11-21
      • 1970-01-01
      • 2011-09-26
      相关资源
      最近更新 更多