Zum Inhalt springen
uencoder

HAL

HAL (Hypertext Application Language) ist ein REST-Hypermedia-Format, das Verknüpfungen zwischen Ressourcen in JSON/XML über _links und _embedded ausdrückt.

Zweck

Einen Hypermedia-Link-Standard für REST-APIs bieten, sodass Clients Folgeschritte über Links entdecken können, was die API-Evolution entkoppelt.

Mechanismus

Ein Ressourcenobjekt enthält _links (eine rel-zu-{href,method,...}-Abbildung) und _embedded (eingebettete verwandte Ressourcen). Das rel eines Links identifiziert den Beziehungstyp, und Clients navigieren per rel statt per hartcodierter URL.

Anwendungsfälle

  • REST-Hypermedia-APIs
  • API-Selbstentdeckung
  • Links zwischen Microservices

Verwandte Tools

References