2016-06-13 12 views
0

RESTの原則(HATEOAS)とHAL(specification,Internet-draft)に準拠するためには、一連のリンクに対する応答はどのようにする必要がありますか?HAL - リンクのみのRESTful応答

JSON本体の最初のレベルに属性を持たず、自己リンクを持つ_linksセクションと、その特定のリクエストで見つかったリンクを持つ_embeddedセクションを持つことはできますか?

UPDATE:例

要求へ:http://localhost:5555/myservice/titles/meow/kittens

戻り値:

{ 
    "_links": { 
    "next": { 
     "href": "/myservice/titles/meow/kittens?page=2" 
    }, 
    "self": { 
     "href": "/myservice/titles/meow/kittens" 
    }, 
    "anchestor": { 
     "href": "/myservice/titles/meow" 
    } 
    }, 
    "_embedded": { 
    "linksINeed": [ 
     { 
     "title": "kitten play", 
     "_links": { 
      "self": { 
      "href": "/myservice/titles/kitten-play" 
      } 
     } 
     }, 
     ... 
     { 
     "title": "kitten eat", 
     "_links": { 
      "self": { 
      "href": "/myservice/titles/kitten-eat" 
      } 
     } 
     } 
    ] 
    } 
} 

この有効REST FUL HAL JSONですか? ありがとう

+1

はい、次と自己リンクがリンク関係タイプレジストリと一貫していることを条件とします。 https://tools.ietf.org/html/rfc5988#section-6.2.2 – VoiceOfUnreason

答えて

-1

プロパティが0のリソースを返すときと同じように空のJSON本体?あなたは、そのリソースなしでやり遂げることができるように少し聞こえる。そのリソースを一意に識別できるプロパティがない場合、自己リンクにはどのようなものが含まれますか?プロパティを持っていても、インスタンス化しない場合でも動作しません。

もしそれがルートであれば、少なくともVersionNumberプロパティを持つApiVersionリソースのようなものを作ることができます。

それ以外の場合は、リソースを削除して別のもの(以前の親ですか?)へのリンクを提供するなど、よりエキゾチックなシナリオでは実現可能ですが、おそらくHttpStatusCode 204 No Contentというメリットがあります。

+0

私の意図を明確にするための例を追加しました。ありがとう –

関連する問題