1

XMLを生成および消費するいくつかのWebサービスを作成しています。計画は、JAXBを備えたTomcat6.xでJersey1.xを使用することです。

私が知る必要があるのは; これらのサービスを作成するときに従うべき経験則はありますか?PUTまたはGETを実行するときの一般的な方法は何ですか?消費者は、応答、ステータス、またはオブジェクトが返されることを期待していますか?

私はこれらすべてのシナリオの例を読んで見てきましたが、各著者/ブロガーと、これらの同じシナリオに異なる方法で対処する方法を説明しました。

これをしばらくやっている人からの提案はありますか?

ありがとう

4

1 に答える 1

1

誰もが同意または反対しているように見えるいくつかのこと:

  1. 無効なリクエストはHTTP400コードを返します。500は、「予期しない例外」にのみ使用する必要があります。
  2. 明確な基準はありませんが、クリーンURLを使用してみてください。上記の利点に加えて、必要に応じてリバースプロキシを簡単に設定できます。
  3. HTTPメソッドでは、GETとDELETEについて合意があるように見えますが、PUTとPOSTのどちらが作成または更新するかについては議論があります。このディスカッションを参照してください。最後に、一部のプロキシまたはWebサーバー(IISの場合)は、GETとPOST以外のものを常に簡単に処理できるとは限らないためX-HTTP-Method-Override、実際のメソッドを指定するには、追加のヘッダーを使用する必要があります。
  4. Acceptヘッダーを尊重し、要求されたタイプのコンテンツを返す必要があります。テキストタイプ(XML、JSON、プレーンテキスト、およびHTML)が最も一般的ですが、これらすべてをサポートしたくない場合があります。

RESTの魅力は、そのシンプルさです。このように保つようにしてください。シンプルであるため、サービスの文書化は簡単であり、それが本当の鍵であり、POSTやPUTを使用しているということではありません。

于 2012-04-27T05:09:37.933 に答える