使用Javascript在URL中使用at(@)符号

使用Javascript在URL中使用at(@)符号,javascript,jquery,html,url,mailchimp,Javascript,Jquery,Html,Url,Mailchimp,场景 我使用MailChimp将某人发送到登录页,并将其电子邮件地址添加到URL中,如下所示 然后我打算使用Javascript从URL获取电子邮件地址 问题 根据URL最佳实践,您显然不应该在URL中使用@符号,除非是出于预期目的(username@password) 由于我正在使用MailChimp插入电子邮件地址,我无法使用%symbol对@字符进行编码 在任何浏览器中是否存在拒绝使用@符号或以某种方式将事情搞砸的情况?还是仅仅是“不是最佳实践”?我已经在一些浏览器中对它进行了测试,看起来

场景

我使用MailChimp将某人发送到登录页,并将其电子邮件地址添加到URL中,如下所示

然后我打算使用Javascript从URL获取电子邮件地址

问题

根据URL最佳实践,您显然不应该在URL中使用@符号,除非是出于预期目的(username@password)

由于我正在使用MailChimp插入电子邮件地址,我无法使用%symbol对@字符进行编码


在任何浏览器中是否存在拒绝使用@符号或以某种方式将事情搞砸的情况?还是仅仅是“不是最佳实践”?我已经在一些浏览器中对它进行了测试,看起来不错,但我只是想确定一下。

您回答了自己的问题。在您关心的浏览器中进行测试。事实上,有些浏览器会变得一团糟,但它们现在已经无关紧要了,除非您出于某种原因想要支持它们。

“任何浏览器中都可能出现这样的情况吗”。。。可能吧。使用
base64_encode()
base64_decode()
@anto.nishanth怎么样?如果你读了我的问题,你会注意到我使用的是Mailchimp,并且没有访问PHP或任何其他脚本语言的权限来影响URL。为什么会投反对票?这个问题无效吗?这已经成为一个奇怪的社区。但这纯粹是一个浏览器版本的东西吗?我想可能还有其他因素。@3Dom关于浏览器的事情是,有时候它们比规范“更好”,并且允许“不是最佳实践”的事情,只要它们不含糊;但是其他时候,他们没有完全实现规范,或者只是根据他们的发布时间表等做出判断。正如你所指出的,它在主要的现代浏览器中运行良好,但是如果你想支持android browser 2.0,你必须进行测试。太好了,谢谢你。我想你已经回答了我的问题。基本上测试你想要支持的每一个浏览器,因为浏览器的年龄并不能保证。我想我会去做测试的。