Często widzę następujące dokumenty HTML
<link rel="self" href="http://example.com/something">
lub tak w JSON
link: {
rel="self",
href="http://example.com/something"
}
lub w formacie XML
<atom:link rel="self" href="http://example.com/something" />
Więc miałem kilka pytań:
- Dlaczego warto dołączyć ten link? Co to za korzyść? (Powiedz mi, że jest ku temu powód i nie jest to tylko talizman „dobrej praktyki”)
- Jak powinienem wykorzystać ten link u moich klientów? Jakie są przypadki użycia tego linku?
- Kiedy nie powinienem używać tego linku? Kiedy dołączanie go jest bezcelowe?
Odpowiedzi:
Jest to samodzielne odniesienie, więc klient będzie wiedział, że IRI (
http://example.com/something
) jest identyfikatorem zasobu, którego dotyczy reprezentacja.Może to być ważne, gdy Twój zasób może mieć wiele identyfikatorów, na przykład
http://example.com/users/1
ihttp://example.com/users/1?fields="name"
może zidentyfikować ten sam zasób, ale GET na nich może spowodować różne reprezentacje.W przypadku typów multimediów, takich jak HAL, można to również wykorzystać do identyfikacji zasobów osadzonych. Na przykład:
źródło