Спецификация HAL - Должна ли собственная ссылка содержать параметр запроса?

В соответствии со спецификацией HAL, ссылка self должна содержать параметр запроса или это нормально для ссылки на первую страницу? Спасибо

Следует примеру:

Запрос:

my-service/movies/123/subtitles?page=3

Фактический ответ JSON:

{
  "count": 20,
  "pagingSize": 5,
  "_links": {
    "next": {
      "href": "/my-service/movies/123/subtitles?page=4"
    },
    "previous": {
      "href": "/my-service/movies/123/subtitles?page=2"
    },
    "self": {
      "href": "/my-service/movies/123/subtitles"
    },
    "movie": {
      "href": "/my-service/movies/123"
    }
  },
  "_embedded": {
    "subtitles": [
      {
        "id": "111",
        "_links": {
          "self": {
            "href": "/my-service/subtitles/111"
          }
        }
      },
      ...    
      {
        "id": "222",
        "_links": {
          "self": {
            "href": "/my-service/subtitles/222"
          }
        }
      }
    ]
  }
}

1 ответ

Решение

Предложенный проект спецификации Hypertext Application Language (HAL) обеспечивает использование href в соответствии с "Target IRI", определенным в спецификации Web Linking ( RFC 5988).

Приложения, которые не хотят регистрировать тип отношения, могут использовать тип отношения расширения, который является URI [RFC3986], который однозначно идентифицирует тип отношения.

Поэтому я бы сказал, что значение self должно быть уникальным и, следовательно, включать любые (неуказанные необязательные) параметры запроса.

Другие вопросы по тегам