【问题标题】:how to create a single-use link in Drupal 8如何在 Drupal 8 中创建一次性链接
【发布时间】:2018-12-16 22:14:30
【问题描述】:

我必须从 drupal 8 发送几封电子邮件 (3000)。每封电子邮件必须有一个指向同一页面的一次性链接。所有电子邮件都保存在自定义实体中(不是网站的注册用户)。

当用户点击邮件链接时,我必须检查该链接是否未被使用。

我想除了邮件之外,您还必须在自定义实体中保存一个参数(令牌?)。当用户点击电子邮件链接时,我会查看参数是否存在以及是否尚未使用。

我该怎么做?

感谢您的帮助。

【问题讨论】:

    标签: module drupal-8


    【解决方案1】:

    具体实施取决于您要做什么。确保链接只使用一次的最简单方法是设置 cookie。当然,这不是最可靠的方式(您可以删除 cookie 或从不同的设备/浏览器访问相同的链接),但对于某些场景来说已经足够了。

    如果您需要更可靠的解决方案,我建议您实现一个自定义 route controller,它接受一个令牌作为 url 参数,并根据您的令牌检查它。 您可以将它们存储为数组 ['token' => 'some_hash', 'used' => 0] 在Drupal sates

    【讨论】:

      猜你喜欢
      • 2018-04-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-29
      • 2013-10-28
      • 1970-01-01
      • 2019-11-11
      • 1970-01-01
      相关资源
      最近更新 更多