【问题标题】:Query string get modified automatically by the browser how to get unmodified one? [duplicate]查询字符串被浏览器自动修改如何获得未修改的字符串? [复制]
【发布时间】:2014-07-15 09:44:39
【问题描述】:

我遇到了查询字符串的问题。我向电子邮件发送激活链接,该链接具有查询字符串,例如用户激活令牌。她是链接http://localhost:3000/#/activation?activation_code=27kVNlC4ShWuL4pkH3/FhVA== 的示例。但是,当我单击链接时,浏览器会自动将查询字符串修改为http://localhost:3000/#/activation?activation_code=27kVNlC4ShWuL4pkH3%2FhVA,这会导致加密错误。知道如何获得实际的查询字符串。我使用 Angular 作为前端和 asp.net Web API。

【问题讨论】:

    标签: javascript asp.net angularjs query-string


    【解决方案1】:

    您在网址中嵌入的激活码使用了保留字符。看到这个问题:What is a valid URL query string?

    我建议您在将激活令牌附加到 url 之前对其进行 url 编码。

    【讨论】:

      【解决方案2】:

      您需要对您的令牌进行 URL 编码。它使用的是保留字符。

      不要忘记使用encodeURIComponent() 对所有特殊字符进行编码。

      【讨论】:

        【解决方案3】:

        你可以用这个:

        Server.UrlDecode(activation_code)
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2022-12-07
          • 2014-05-30
          • 2010-10-03
          • 2017-07-11
          • 1970-01-01
          • 2018-08-04
          • 1970-01-01
          相关资源
          最近更新 更多