Поднимите фильтр, чтобы заставить ССЛ - PullRequest
5 голосов
/ 28 июня 2010

в приложении Struts, у меня есть фильтр, который заставляет определенные страницы быть доступными только через https через перенаправление.Я подумываю о том, чтобы перенести его на лифт, поэтому мой вопрос таков: в этой среде есть ли способ лифта для реализации такого фильтра или он похож / такой же, как в стойках?Спасибо

1 Ответ

11 голосов
/ 29 июня 2010

В Lift SiteMap определяет правила доступа к странице. Вы можете создать запись SiteMap, которая выполняет перенаправление на сайт https на определенных страницах:

// create an object that does a redirect to the https server if the
// request is on http
object RequireSSL extends Loc.EarlyResponse(
  () => {
    for {
      r <- S.request
      lowLevelReq <- Box !! r if lowLevelReq.scheme == "http"
    } {
      S.redirectTo("https://"+lowLevelReq.serverName+lowLevelReq.contextPath)
    }
    Empty
  })

// Build SiteMap
def entries = (Menu("Home") / "index") ::
(Menu("Secure") / "secure" >> RequireSSL) ::
Nil

Надеюсь, это поможет.

...