Ich untersuche, wie mehrere Werte für den gleichen Parameternamen in einer GET-Anforderung korrekt übergeben werden.Korrekter Weg, mehrere Werte für denselben Parameternamen in der GET-Anforderung zu übergeben
Ich habe so gesehen URLs:
http://server/action?id=a&id=b
Und ich habe URLs so gesehen:
http://server/action?id=a,b
Mein Verständnis ist, dass die erste richtig ist, aber ich kann nicht finden irgendeine Referenz dafür. Ich habe mir die HTTP-Spezifikation angeschaut, konnte aber nichts darüber herausfinden, wie der "Abfrage" -Teil einer URL aussehen sollte.
Ich möchte keine Antwort, die sagt "entweder ist in Ordnung" - wenn ich einen Webservice erstelle, möchte ich wissen, welche dieser Methoden Standard ist, so dass Leute, die meinen Webservice verwenden, mehrere Parameter übergeben können der selbe Name.
Kann mich also jemand auf eine offizielle Referenzquelle verweisen, um zu bestätigen, welche Option korrekt ist?
In Ermangelung von Informationen, im Gegenteil, ich denke, du hast recht - wenn RFC3986 einen Standard spezifiziert nicht, dann gibt es keinen. Danke Eduardo. – stripybadger
A würde vorschlagen, 'id = a & id = b' als boolesches AND und 'id = a, b' als boolesches ODER zu verwenden. –
FWIW PHP unterstützt das Lesen von Argumenten wie '? Id = 5 & id = 3' nicht. PHP würde hier nur einen Wert für ID lesen. Wenn ich mich richtig erinnere, müsste es so aussehen, damit es mit PHP funktioniert: '? Id [] = 5 & id [] = 3' –