URL: nazwa użytkownika z @


125

Aby wysłać nazwę użytkownika i hasło wraz z adresem URL, używamy tego schematu:

http://username:password@www.my_site.com

Ale moja nazwa użytkownika to my_email@gmail.com.
Problem w tym @.

Jak mogę to rozwiązać?


10
zakoduj @as %40.
Marc B

6
Nie chcesz umieszczać hasła w swoich adresach URL, ponieważ możesz przypadkowo spróbować uzyskać dostęp do adresu URL przez HTTP (co robisz), a to oznacza, że ​​każdy, kto ma Wireshark w promieniu 50 metrów od Ciebie, ma Twoje hasło i nazwę użytkownika.
HoldOffHunger

Odpowiedzi:


182

Musisz zakodować adres URL @ jako% 40.


1
Miły. Działa to również, jeśli twoje hasło zawiera @również, co jest coraz bardziej prawdopodobne w przypadku losowych haseł tworzonych przez menedżerów haseł.
Adambean

czy muszę to robić ze wszystkimi znakami innymi niż alfanumeryczne? na przykład, jeśli moja nazwa użytkownika to name.lastname@mail.comi moje hasło abc!@#, czy powinienem użyć name%2Elastname%40mail%2Ecomi abc%21%40%23?
m4l490n

19

Użyj% 40 w swojej nazwie użytkownika zamiast symbolu @ dla kodowania adresu URL. Powinien wtedy poprawnie przejść.


Działa to wspaniale teraz, gdy bitbucket nie zezwala już na zwykłe nazwy użytkowników, ale wymaga nazw użytkownika w stylu nazwa_użytkownika@example.org.
Jeroen Wiert Pluimers

14

Po prostu zrób:

 http://my_email%40gmail.com:password@www.my_site.com

Jestem dość zaskoczony, że problem dotyczył nazwy użytkownika @ dotyczył a nie hasła - zwykle w tym miejscu otrzymuję zastrzeżone znaki w uprawnieniach adresu URL lub częściach ścieżki.

Aby rozwiązać ogólny przypadek znaków specjalnych: Po prostu otwórz konsolę chrome, a F12następnie wklej encodeURIComponent(str)gdziestr jest twoje hasło (lub nazwa użytkownika), a następnie użyj zakodowanego wyniku do utworzenia adresu URL z hasłem.

Mam nadzieję, że zaoszczędzi ci to trochę czasu.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.