私の HTTP API では、エンドポイントの 1 つがランダムに生成された値を返す必要があり、その値はエンドポイントの認証された呼び出し元に関連付けられます。現在、私は次の構造を持っています:
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"}
ランダムな値を取得するために GET 要求が発行されます。ただし、HTTP GET 呼び出しはべき等である必要があり、上記の実装はその規則に従っていません。一方で、メッセージ本文を空にして HTTP POST リクエストを発行してもよいかどうかはわかりません。
HTTPブックでこの種の操作を実行する正しい方法は何ですか?