0

私は、REST API 設計に関する O'Reilly の本を参照していました。この本では、相互に関連するリソースやものを表すためにリンクをどのように使用する必要があるかについて、特にメッセージ形式を明確に規定しています。ただし、すべての例は、リソースの読み取り (GET) と、サーバーがメッセージを構造化する方法に関するものです。しかし、 Create (POST) はどうでしょうか? 同様に相互接続されたオブジェクトを作成するためのメッセージ構造は、リンクを介して似ている必要がありますか??
例として、 Parent フィールドを持つ Person オブジェクトを作成したいと考えてみましょう。POST (Post msg body) を介してサーバーに送信される json メッセージ形式は次のようになります。

{
  name:'test',
  age:12,
  links:[
   {
      rel:'parent',
      href:'/people/john'
    }     
]
}
4

2 に答える 2

3

これがあなたが見ることができるメディアタイプです

http://stateless.co/hal_specification.html

于 2012-07-25T15:19:58.933 に答える
1

はい、それはそれを行う1つの方法です。GET 情報は人間が判読できるようにすると便利かもしれませんが、POST/PUT 情報はマシンを対象としています。

サーバーが情報を処理する必要性を減らすために情報を追加すること (たとえば、情報のすべてをゼロから回復するのではなく、情報が理にかなっていることを確認することに限定することによって) も、パフォーマンスの面で非常に理にかなっています。確認する限り、ユーザー データは一般的な原則に基づいて疑わしいものとして扱わなければならないことに注意してください最初の ExtJS に精通した人がサービスへのリクエストを偽造できるようになることは望ましくありません。

特定のアプリケーションに最適なものに応じて、XML または CSV でデータをフォーマットすることもできます。また、コードをリファクタリングまたは再利用したい場合があることを念頭に置いて、単一の標準に準拠することも理にかなっています。すべてを考慮すると、JSON がおそらく最良の選択肢です。

于 2012-07-25T11:56:34.803 に答える