首页 > 解决方案 > Angular 站点使用时,带有参数的电子邮件超链接将变为小写(查询字符串)

问题描述

再会。

我有一个使用 dotnetcore2 和 angular 的项目。使用内置核心函数 (UserManager) 我创建了一个令牌:

GeneratePasswordResetTokenAsync()

然后我给用户发邮件,让他点击一个链接来重置他/她的密码。

令牌在邮件中正确发送,并且超链接确实具有正确大小写的令牌。

当我单击超链接时,我被定向到正确的页面,但查询字符串中的所有内容都是小写的,即令牌是小写的。

有人对此有解决方案吗?

  1. 在 api 中制作的令牌示例。
  2. 发送邮件时的令牌样本(邮件中的超链接)
  3. 通过单击电子邮件超链接打开页面时查询字符串中的令牌示例
    1. “77BqHb51n2P”
    2. “77BqHb51n2P”
    3. “77bqhb51n2p”

标签: angular.net-coretokenquery-string

解决方案


发现问题:

在 App.Component.ts

注释掉这个:

this.router.events.subscribe(event => {
    if (event instanceof NavigationStart) {
        let url = (<NavigationStart>event).url;

        if (url !== url.toLowerCase()) {
            this.router.navigateByUrl((<NavigationStart>event).url.toLowerCase());
        }
    }
});

现在我只需要确保我所有的服务和路由都是正确的,因为没有上面的外壳现在到处都是问题。


推荐阅读