Zauważ również, że jeśli ktoś chce postępować zgodnie z najnowszą wersją RFC3986
dla adresów URL, rezerwując nawiasy kwadratowe (dla IPv6), a tym samym nie zakodowane przy tworzeniu czegoś, co może być częścią adresu URL (np. Hosta), poniższe mogą pomóc.
function fixedEncodeURI (str){return encodeURI(str).replace(/%5B/g,'[').replace(/%5D/g,']');}
Mam nadzieję, że pomoże to ludziom rozwiązać problemy, gdy natkną się na to pytanie.
Chociaż ten link może odpowiedzieć na pytanie, lepiej jest dołączyć tutaj istotne części odpowiedzi i podać link w celach informacyjnych. Odpowiedzi zawierające tylko łącze mogą stać się nieprawidłowe, jeśli połączona strona ulegnie zmianie. - Z recenzji
Peter
@ Peter Dzięki, ale to tylko link do narzędzia online, które może być pomocne tutaj. Ponieważ odpowiedzi już zostały udzielone, nie ma potrzeby dalszych wyjaśnień.
Krzysztof Przygoda
1
Dane prawdopodobnie zostałyby pierwotnie opublikowane z formularza internetowego wyglądającego trochę tak (ale prawdopodobnie znacznie bardziej skomplikowanego):
Serwer WWW na drugim końcu będzie prawdopodobnie podjąć user[login]i user[password]parametry, i uczynić je do userobiektu z logini passwordpól zawierających te wartości.
Reprezentują
[
i]
. Kodowanie nazywa się „kodowaniem adresu URL” .źródło
[]
jest zastępowany przez%5B%5D
w czasie kodowania adresu URL.źródło
Jest to zwykłe kodowanie adresu URL
Tak więc reprezentują
[
odpowiednio]
źródło
Aby rzucić okiem, możesz procent-en / dekodować za pomocą tego narzędzia online .
źródło
Dane prawdopodobnie zostałyby pierwotnie opublikowane z formularza internetowego wyglądającego trochę tak (ale prawdopodobnie znacznie bardziej skomplikowanego):
Gdyby metodą było „pobierz” zamiast „opublikuj”, kliknięcie przycisku przesyłania doprowadziłoby cię do adresu URL wyglądającego trochę tak:
lub:
Serwer WWW na drugim końcu będzie prawdopodobnie podjąć
user[login]
iuser[password]
parametry, i uczynić je douser
obiektu zlogin
ipassword
pól zawierających te wartości.źródło
Ważne jest również, dlaczego te symbole występują w adresie URL. Zobacz https://www.php.net/manual/en/function.parse-str.php#76792 , w szczególności:
powyższe powoduje:
i jaka jest metoda oddzielania zmiennych zapytań w tablicach (przynajmniej w php).
źródło