Rest 2
HepCat Dev and Test Blogクライアント『BlogWrite』の開発&テスト&アップデート情報をメインに、ブログやWebにまつわる技術的トレンドなどを扱う開発ブログです。 « Blogger + GDataとoptimistic concurrencyなど | メイン | Google不動産検索 » 2006年08月17日 RESTにおけるベストプラクティス: エラーハンドリング [ Atom/REST ] RESTfullなAPIにおいてのエラーハンドリングについては重要なのですが、今まで(特に日本では知っている限り)あまり言及されたことがなさそうなのと、オライリー系のサイトでたまたま今日良い記事 RESTful Error Handling を見つけたので、ココで紹介したいと思います。 (2003年12月の記事ですが何故か見落としていました) この記事では、REPSfullなWebアプリケーションにおいて、エラーが発生した時の動作は(調査した所)一般的にいって4っつの方法が利用されているとしています。 1.HTTPステータスコードのみ 例えば、 http://www.example.com/xml/book?id=1234&dev_token=ABCD1234 のようなアドレスでGETした時、もし”id=”によって指定されたデータが見つからなかった場合、HTTPステータスコードの404 Not Found を返す、といった具合。2.空のレコードセットを返す 例えば、Atomフィードを返すようなケースで、エントリが一つもないフィード空フィードを返す。この場合、そもそも不正なIDなのか、単にまだ存在しないのかなどは分からない。 3.HTTPヘッダーを拡張する HTTP/1.1 200 OK …省略… X-DAS-Status: 403 Content-Type: text/plain Content-Length: 10 Date: Sun, 30 Nov 2003 21:02:13 GMT 上記のように、HTTPヘッダー内にアプリケーション固有のエラーコードを埋め込む。(注:確か偉い人がX-**のような拡張は安易に行なうべきではない、といった事を言っていました) 4.XML文書を返却する <?xml version=”1.0″ ?> <xoomleError> <method>doGoogleSearch</method> <errorString>Invalid Google […]