Не удается перенаправить на внешний URL - PullRequest
0 голосов
/ 30 октября 2018

У меня есть микросервис scala play, и я пытаюсь перенаправить на внешний URL-адрес. Но у меня есть проблема, потому что URL-адрес перенаправления добавляется к домену службы. Мой код:

Redirect("www.google.com", 302)

Но когда я запускаю метод контроллера в браузере, он пытается перенаправить на этот URL

http://localhost:9000/www.google.com

и он жалуется, говоря, что в маршрутизаторе с

не определена конечная точка
Action Not Found

GET /www.google.com

Как я могу сделать это перенаправить только на www.google.com?

UPDATE

Мне удалось заставить его работать следующим образом:

установить маршрут следующим образом

GET  /google    controllers.Default.redirect(to = "http://google.com")

и в контроллере я меняю перенаправление на:

Redirect("google", 302)

Я не уверен, что плюсы и минусы этого решения. Как перенаправление на внешние URL должно работать в Play? Также это не работает для меня, так как я не хочу кодировать в конечных точках. Для моего варианта использования URL-адрес перенаправления является динамическим. Это может быть все, что пользователь поставляет на мой сервис.

1 Ответ

0 голосов
/ 30 октября 2018

Это сработало для меня в Scala:

package controllers

import play.api.mvc.{Action, Controller}

object essai extends Controller{
  def toGoogle() = Action {
    Redirect("http://google.com", 302)
  }

}
...