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

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

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

Запрос:

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"
          }
        }
      }
    ]
  }
}

person Gabe    schedule 04.07.2016    source источник


Ответы (1)


Предлагаемый язык гипертекстовых приложений (HAL) draft применяет "href" в соответствии с "целевым IRI", определенным в спецификации веб-ссылок (RFC 5988).

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

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

person Alexandru Marculescu    schedule 04.07.2016