Я часто вижу следующее в документах HTML
<link rel="self" href="http://example.com/something">
или как это в JSON
link: {
rel="self",
href="http://example.com/something"
}
или в XML
<atom:link rel="self" href="http://example.com/something" />
Итак, у меня было несколько вопросов:
- Зачем включать эту ссылку? Какое преимущество это дает? (Пожалуйста, скажите мне, что есть причина, и это не просто талисман "хорошей практики")
- Как мне использовать эту ссылку в моих клиентах? Каковы варианты использования этой ссылки?
- Когда я не должен использовать эту ссылку? Когда это бессмысленно включать?
Ответы:
Это самостоятельная ссылка, поэтому клиент будет знать, что IRI (
http://example.com/something
) является идентификатором ресурса, о котором идет представление.Это может быть важно, когда ваш ресурс может иметь несколько идентификаторов, например,
http://example.com/users/1
иhttp://example.com/users/1?fields="name"
может идентифицировать один и тот же ресурс, но GET для них может привести к различным представлениям.Для типов носителей, таких как HAL, вы также используете это для идентификации встроенных ресурсов. Например:
источник