Prawidłowe utworzenie adresu URL za pomocą ciągu zapytania i hashtagu kotwicy


114

Kiedy w adresie URL widoczne są zarówno ciąg zapytania, jak i znacznik kotwicy (znacznik skrótu), jaka jest właściwa kolejność ich pojawiania się?

http://www.whatever.com?var=val#anchor

lub

http://www.whatever.com#anchor?var=val

Czy jest jakaś dokumentacja na ten temat?

aktualizacja: adresy URL są obsługiwane przez Wordpress / PHP

Odpowiedzi:


148
?var=var#hash

wszystko po #stronie klienta.

Zajrzyj także do przepisywania adresów URL, aby pozbyć się brzydkiego ?var=var


26
Ciąg zapytania jest brzydki, ale ma swój cel i jest bardziej elastyczny
Morio

7
Co jest złego w używaniu ciągów zapytań? nie bez powodu są częścią standardu HTTP
Julio Bastida,

Tak, ale w przypadku SPA (aplikacji jednostronicowych), jakie parametry dla parametrów strony do strony po stronie klienta?
Pete Alvin


3

Zwróć uwagę, że jeśli adres URL zawiera zarówno tagi kotwicy (#), jak i ciągi zapytań (?), Przeglądarka może zignorować ciąg zapytania i przejść do tagu kotwicy bez ponownego ładowania strony.

Może być konieczne przesłanie strony za pomocą pliku

    <form action='webpage.php?q=string#tag' method='GET or POST'>
    <input type='text' id='q' name='q' value='string'>
    <input type='submit' value='submit'>
    </form> 

a nie tylko link URL

    <a href='webpage.php?q=string#tag'>.

1

Jeśli intencją użycia #jest oznaczenie strony, fragmentto - tak, ?wtedy #.

Jeśli #nadchodzi wcześniej ?i nie ma oznaczać strony fragment(może się to zdarzyć, gdy #jest częścią uprawnień (nazwa użytkownika i hasło)), musi być zakodowana lub masz kłopoty. To samo dotyczy wszelkich innych znaków specjalnych ( :, @...), które mogłyby dać inne znaczenie do adresu URL.

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.