1

HTTP GET パラメーターをサポートする REST API を設計しています。ほとんどの場合、1 つのパラメーターに対して 1 つの値のみを受け入れます。しかし、重複したパラメーターをどのように処理すればよいでしょうか?

たとえば、Stack Overflow は GET param を受け入れますtab

http://stackoverflow.com/?tab=hot
http://stackoverflow.com/?tab=featured

重複するパラメーターは許可されています。両方の値を渡すことは正しいです:

http://stackoverflow.com/?tab=hot&tab=featured

私は何をすべきか?最初の値を使用するだけで、他の値を黙って無視するか (SO が行うこと)、1 つの値のみが許可されていることを示すエラーを返しますか? 後者の場合、どのステータス コード (おそらく 409 Conflict) でどのエラーを返す必要がありますか?

4

2 に答える 2

0

これは設計上の決定です。APIどのように機能させたいかについてのあなたのデザイン。
いずれかを無視することを選択した場合、問題はどれを無視するかです。
したがって、それは単なる対立です。または
、API は結合されたデータで応答できますが、その要求は次のようになります。

https://stackoverflow.com/?tab=hot,featured

この質問も参照してくださいREST API Url の Extra Query parameters

于 2013-05-15T10:57:39.090 に答える