Как получить абсолютный URL с Hateoas Bundle на Symfony2

Я только что установил пакет из github Willdurant, и я получил относительный URL, как это:

"_links": {
    "self": {
      "href": "/1.0/users/?page=1&limit=10"
    },
    "first": {
      "href": "/1.0/users/?page=1&limit=10"
    },
    "last": {
      "href": "/1.0/users/?page=2&limit=10"
    },
    "next": {
      "href": "/1.0/users/?page=2&limit=10"
    }
  }

Для моего Hateoas URL я действительно предпочитаю абсолютный URL, но я не нахожу ничего в Google, чтобы это изменить. 2 часа поиска, пробуем несколько ключевых слов и ничего...

Спасибо за вашу помощь.

1 ответ

Вы можете использовать это многими способами. Все зависит от способа генерации ссылок.

Если вы используете @Route аннотация для генерации ссылки, имеет параметр absolute которые должны быть установлены в true:

/**
 * @Hateoas\Relation(
 *     name = "self",
 *     href = @Hateoas\Route(
 *         "user_get",
 *         parameters = { "id" = "expr(object.getId())" },
 *         absolute = true
 *     )
 * )
 */

Если вы используете язык выражений для генерации ссылки, вы можете передать true в качестве третьего параметра link() функция:

/**
 * @Hateoas\Relation(
 *     "user",
 *     href = "expr(link(object.getUser(), 'self', true))"
 * )
 */
Другие вопросы по тегам