Was ich nicht wirklich verstehe, ist der Nutzen von '?' statt '& amp;' in URLs:
Es macht niemandem das Leben leichter, wenn wir ein anderes Zeichen als erstes Trennzeichen verwenden. Kannst du eine vernünftige Erklärung finden?
EDIT: Nach mehr Forschung fand ich, dass "& amp;" kann ein Teil des Dateinamens (Begriffe & amp; conditions.html) sein, also "?" ist ein guter Separator. Aber ich denke immer noch mit "?" für Separatoren macht Leben einfacher (aus Sicht der URL-Generatoren und Parser):
Gibt es einen Vorteil bei der Verwendung von "& amp;" Was ist auf den ersten Blick nicht klar?
Aus Sicht der URI-Spezifikation (RFC 3986) ist das einzige Trennzeichen hier "?". das Format der Abfrage ist undurchsichtig; Die kaufmännischen Und-Zeichen sind einfach etwas, das HTML für Formulareinreichungen verwendet.
Die Antwort ist ziemlich in diesem Artikel - Ссылка . Um es hervorzuheben, hier:
Abfrage ist die bevorzugte Methode, um einige Parameter an eine Ressource zu senden der Server. Dies sind key = value-Paare und sind vom Rest getrennt der URL von einem? (Fragezeichen) Zeichen und sind normalerweise getrennt voneinander durch & amp; (Und-Zeichen) Zeichen. Was du vielleicht nicht weißt ist die Tatsache, dass es legal ist, sie voneinander zu trennen durch; (Semikolon) Charakter. Die folgenden URLs sind gleichwertig:
Der RFC 3896 ( Ссылка ) definiert allgemeine und untergeordnete Trennzeichen ... '?' ist ein General, '& amp;' und ';' sind sub. Die Spezifikation ist ziemlich klar darüber.
In diesem Fall ist letzteres "?" Zeichen würden als Teil der Abfrage behandelt werden. Wenn der Abfrageparser der Spezifikation streng folgt, würde er die gesamte Abfrage an das App-Ziel weiterleiten. Wenn das App-Ziel auswählen könnte, die Abfragezeichenfolge in einer Weise weiter zu verarbeiten, die die? als param Name-Wert-Paare Trennzeichen, das ist bis zu den Designern der app.
Meine Vermutung ist, dass dies oft "nur funktioniert", weil Code, der Query-Strings aufteilt und das ursprüngliche uri alle Begrenzer für die Übereinstimmung verwendet: 1) die erste Abfrage wird auf '?' Dann wird 2) Query-String analysiert mit Char-Match-Liste, die '?' (nur Bequemlichkeit) .... Dies könnte bereits in ubiquitären Parsing-Bibliotheken auftreten.