2012-04-07 113 views
68

用一个URL发送用户名和密码,我们用这个方案:网址:用户名与@

http://username:[email protected]_site.com 

但我的用户名是[email protected]。问题是@

我该如何解决?

+2

将'@'编码为'%40'。 – 2012-04-07 01:17:12

+0

您不希望在URL中包含密码,因为那样您可能会意外地尝试通过HTTP访问URL(您正在这样做),这意味着任何使用Wireshark的人在50米内都有您的密码和用户名。 – HoldOffHunger 2017-06-15 12:56:43

回答

102

您需要对@作为%40进行URL编码。

+0

太棒了,很好。 – Rodrigo 2012-04-07 01:18:45

15

在您的用户名中使用%40而不是URL编码的@符号。它应该通过它然后。

+0

由于bitbucket不再允许普通的用户名,但它需要[email protected]样式的用户名,所以这个功能非常出色。 – 2017-05-26 15:45:58

6

只要做到:

http://my_email%40gmail.com:[email protected]_site.com 

我很惊讶的是,问题是与用户名@,而不是密码 - 通常这是我得到的权威网址或路径部分保留字符。

为了解决特殊字符一般情况下:打开Chrome控制台F12然后粘贴encodeURIComponent(str)其中str是你的密码(或用户名),然后使用编码的结果,形成密码的URL。

希望这可以为您节省一些时间。