Beziehung und Unterschied zwischen HAL und HATEOAS


77

HATEOAS (Hypermedia als Engine des Anwendungsstatus) und HAL (Hypertext Application Language) scheinen verwandt zu sein, sind aber nicht genau gleich. Welche Beziehung und welchen Unterschied besteht zwischen HATEOAS und HAL?

Antworten:


97

HATEOAS ist ein Konzept der Anwendungsarchitektur . Es definiert die Art und Weise, in der Anwendungsclients mit dem Server interagieren, indem sie über Hypermedia-Links navigieren, die sie in vom Server zurückgegebenen Ressourcenmodellen finden.

Um HATEOAS zu implementieren, benötigen Sie eine Standardmethode zur Darstellung von Ressourcen, die Hypermedia-Informationen (Links zu verwandten Ressourcen) enthält, z. B.:

{
    "links": {
        "self": { "href": "http://api.com/items" },
        "item": [
            { "href": "http://api.com/items/1" },
            { "href": "http://api.com/items/2" }
        ]
    },
    "data": [
            { "itemName": "a" }, 
            { "itemName": "b" } 
    ] 
}

HAL ist einer dieser Standards. Es ist ein spezifisches Format der Ressourcenpräsentation, mit dem HATEOAS implementiert werden kann.

Sie können HATEOAS vollständig implementieren, ohne HAL zu folgen, wenn Sie einem anderen Standard folgen oder Ihren eigenen verwenden möchten.


5
Welche Standards kennen Sie neben HAL?
Lee Chee Kiam

16
Es gibt Sammlung + json und mindestens ein Paar von anderen
astreltsov

3
Es gibt auch Sammlung + JSON , JSON-LD und die Verwendung von Link-Headern .
RAM
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.