2016-08-19 5 views
1

私は、アプリケーションの構成をupsertして取得するためのRESTful Webサービスを作成しています。これはグローバルな設定なので、1つのドキュメント/レコードのみが存在します。私の質問は、これをRESTful標準にどうやって適合させるかということです。レコードが1つしかない場合のREST APIエンドポイント

upsertの場合、最も適切な「作成」または「更新」(およびそれぞれPOSTまたはPUTの動詞)のコントローラーメソッドですか?

フェッチについては、「index」または「show」のコントローラメソッドが正しいですか?前者の場合、1つのオブジェクトを返すことは許容されますか、それとも長さが1の配列でなければなりませんか?後者の場合、idパラメータを除外するルートを使用することは許容されますか?(常に1つで、必ずしも必要ではありません)

私はこれを熟考していますか、「RESTのコンプライアンス/一貫性」に重点を置いていますか?あるいは、全体が間違っているかもしれません。私はこのサービスを書くべきではありません。私は、このAPIは何よりも内部的なものであり、フロントエンドがバックエンドと通信するために使用するものであることを言及する必要があります。したがって、第三者は心配する必要はありませんが、私はまだメンテナンス開発者に混乱させたくありません。

ありがとうございます!

+1

を更新それを克服する。 –

+1

単一のオブジェクトを返すことができますが、これはコレクションではありません。あなたはイドも必要ありません。私はupsertとGETの情報を読むためにPUTを使います。あなたはもっと私が思う必要はありません。 – inf3rno

答えて

2

私はそれが問題だとは思わない。ここで私は、このAPIを設計する方法をです:

  • GET /api/configuration - 設定

  • PUT /api/configurationを得る - の構成

  • PATCH /api/configurationを更新 - 部分的にはいあなたが設定

+0

クリーンなAPI設計は、サービスをRESTfulにしますか?おもしろい... –

+0

あなたがしようとしているのは純粋な文書操作ですが、HTTPメソッドセットへのマッピングは普通は正しかったです。 – VoiceOfUnreason

関連する問題