私のユーザーは、iOS アプリでいくつかの情報フィールドに入力します。この情報は、RESTful API を備えたサーバーで検証する必要があります。検証後、iOS アプリの UI が変更され、結果が示されます。
リソースを取得しておらず、リソースも作成も更新もされていないため、GET、PUT、POST のいずれも適切ではないようです。
この検証を実装するのに最適な REST 操作は何ですか?
私のユーザーは、iOS アプリでいくつかの情報フィールドに入力します。この情報は、RESTful API を備えたサーバーで検証する必要があります。検証後、iOS アプリの UI が変更され、結果が示されます。
リソースを取得しておらず、リソースも作成も更新もされていないため、GET、PUT、POST のいずれも適切ではないようです。
この検証を実装するのに最適な REST 操作は何ですか?
私はあなたと同じシナリオを使用し、そのために PUT を使用します。「同じリクエストを 2 回送信すると、サーバー上で異なる状態になりますか?」と自問する必要があります。はいの場合は POST を使用し、そうでない場合は PUT を使用します。
ユーザーがiOS アプリでいくつかの情報フィールドに入力します。この情報は、RESTful API を備えたサーバーで検証する必要があります。検証後、iOS アプリの UI が変更されて結果が示されます....リソースが取得されず、リソースも作成または更新されません。
何も保存していない (リソースを変更していない) ため、これは技術的には RESTful よりも RPC に近いと思います。
以下は私の意見なので、それを福音と見なさないでください。
情報が単に送信されており、はいまたはいいえと言っていて、それを保存していない場合は、問題ないと思いPOST
ます..
情報が実際に保存/更新されている場合は、適切な HTTP メソッドを選択することがより重要になります。
POST = CREATE / SUBMIT (in an RPC context)
PUT = UPDATE (or CREATE if there is nothing to UPDATE)
ValidationResource
aと two リクエストを使用することをお勧めします。このリソースの各インスタンスは、一連のデータの検証を表します。ワークフロー:
1.新規作成ValidationResource
POST /path/to/validations
201 Created
Location: /path/to/validations/<unique-id-of-this-validation>
2. 検索結果
GET /path/to/validations/<unique-id-of-this-validation>
200 OK
{'valid': true}
または{'valid': false}
これは、検証がサーバー状態のリソースである RESTful アプローチです。