In meiner HTTP-API sollte einer der Endpunkte einen zufällig generierten Wert zurückgeben, der dem authentifizierten Aufrufer des Endpunkts zugeordnet wird. Derzeit habe ich die folgende Struktur:Leere HTTP-POST-Anforderung oder GET-Anforderung zum Generieren eines Zufallswerts über eine HTTP-API
GET http://example.com/random-ticket HTTP/1.1
Authorization: Basic base64-encoded-basic-auth-value
Accept: application/json
Host: example.com
HTTP/1.1 200 OK
Cache-Control: no-cache
Content-Type: application/json; charset=utf-8
Date: Thu, 03 Oct 2013 07:25:56 GMT
Content-Length: 59
{"user-ticket":"Pfa42634e-1a2e-4a7d-84b9-2d5c46a8dd81"}
Eine GET-Anfrage ausgegeben, um den Zufallswert abzurufen. Jedoch, HTTP GET calls should be idempotent und meine obige Implementierung gehorcht dieser Regel nicht. Auf der anderen Seite, Ich bin mir nicht sicher, ob es OK ist, HTTP-POST-Anfragen mit einem leeren Nachrichtentext auszustellen.
Was ist der richtige Weg, um diese Art von Operationen über das HTTP-Buch durchzuführen?
Erstellen einer Ressource! = Speichern von Wert auf dem Server –
@FilipW Ich habe nicht gesagt, einen Wert zu speichern. Es ändert sich **. – Aliostad
danke Jungs. Diese Antwort ist beschreibender und löste alle meine Verwirrungen. – tugberk