it-swarm.com.de

Richtige URL-Bildung mit Query String und Anchor Hashtag

Wenn sowohl eine Abfragezeichenfolge als auch ein Ankertag (Hashtag) in einer URL sichtbar sind, in welcher Reihenfolge werden sie angezeigt?

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

oder

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

Gibt es dazu Unterlagen?

pdate: Die URLs werden von Wordpress/PHP behandelt

87
Dan
?var=var#hash

alles nach # ist clientseitig.

Schauen Sie sich auch das Umschreiben von URLs an, um hässliche ?var=var

111
blitzmann

? sollte vor dem # stehen, wie in RFC 3986 vermerkt:

relative-ref = relative-part [ "?" query ] [ "#" fragment ]

Entnommen einer Antwort vom Superuser ( https://superuser.com/questions/498617/does-an-anchor-tag-come-before-the-query-string-or -nach ):

50
billy

Beachten Sie, dass der Browser die Abfragezeichenfolge möglicherweise ignoriert und zum Ankertag navigiert, ohne die Seite neu zu laden, wenn die URL über Ankertags (#) und Abfragezeichenfolgen (?) Verfügt.

Es kann erforderlich sein, die Seite mit a einzureichen

    <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> 

anstatt nur einen URL-Link

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

Wenn die Absicht besteht, # ist zu bezeichnen Seite fragment dann - ja ? dann #.

Ob # kommt vor ? und es ist nicht zu Seite fragment zu bezeichnen (dies kann passieren, wenn # ist Teil der Autorität (Benutzername und Passwort). Es muss verschlüsselt werden, oder Sie haben Probleme. Gleiches gilt für alle anderen Sonderzeichen (:, @, ...), die der URL eine andere Bedeutung geben könnten.

1