Obecnie jestem w stanie uzyskać hosta z request, który obejmuje domenę i opcjonalny port. Niestety, nie zawiera protokołu (http i https), więc nie mogę utworzyć bezwzględnych adresów URL do samej witryny.Play Framework 2.1: Scala: jak uzyskać cały URL bazowy (w tym protokół)?
object Application extends Controller {
def index = Action { request =>
Ok(request.host + "/some/path") // Returns "localhost:9000/some/path"
}
}
Czy istnieje sposób na uzyskanie protokołu z obiektu żądania?
Dlaczego potrzebujesz bezwzględnych linków? (jaki jest twój przypadek użycia?) –
Kilka przykładów, w których potrzebuję bezwzględnych adresów URL: 1) json api, który zwraca ścieżki do innych adresów URL w witrynie (z zasobów do innych punktów wejścia API, itp.). 2) Wysyłanie e-maili do użytkowników. 3) udostępnianie adresów URL w witrynach zewnętrznych (publikowanie w apis itp.) –
Więcej przykładów użycia: generowanie 'sitemap.xml' i' rss.xml'. – mjswensen