6

データベースを開始するための REST API を設計したいと考えています。適切な http メソッド (別名動詞) が見つかりません。

私は現在考えています:

START /databases/mysampledatabase

私はいくつかの RFC を閲覧しましたが、ここの誰かが事実上の標準動詞を教えてくれるのではないかと思いました。

私が破棄したメソッド (見るのに飽きる前に):

RFC 2616 オプション GET HEAD POST PUT DELETE TRACE CONNECT

RFC 2518 PROPFIND PROPPATCH MKCOL コピー 移動 ロック ロック解除

RFC 3253 REPORT CHECKOUT CHECKIN UNCHECKOUT MKWORKSPACE UPDATE LABEL MERGE BASELINE-CONTROL MKACTIVITY

4

1 に答える 1

8

ここにはたくさんの思考上の欠陥があります..まず、追加の HTTP 動詞 (CRUD 動詞は別として) は、安らかではないと考えるべきです。

したがって、この質問を解釈するには 2 つの方法があり、両方の答えがあります。

1. サービスを開始するための最も適切な HTTP メソッドは何ですか?

あなたが必要としているものとまったく同じものはありませんPOST.

2.サービスを開始するための良いRESTfulな方法は何ですか

まず、アクションとして「サービスの開始」が表示されないはずです。「ステータス」(開始中または停止中) を変更中のリソースと考え、リソースを更新するために PUT を使用する方が簡単です。

したがって、この場合、各サービスには一意の uri が必要です。GETその uriの Aは次のようなものを返す可能性があります:

{ "status" : "stopped" }

「stopped」を「started」に変更するだけでPUT、新しいリソース..その後、サービスが自動的に実行を開始できます。

私はこれがどれほど便利なのだろうか..私はREST熱狂者ではなく、単純なPOSTが最善の方法だと思います..

于 2013-02-27T00:16:00.117 に答える