Я строю маршруты по методу ~
. Некоторые из моих маршрутов окружены директивой authenticate
, которая при некоторых обстоятельствах возвращает отклонения. У меня есть неявный обработчик отклонения в рамках метода runRoute
.Как применять директиву аутентификации только по нескольким маршрутам
Как применить эту директиву только к маршрутам, окруженным этой директивой? В отказеHandler я выполняю перенаправление на путь, который не окружен директивой аутентификации. В отладки я понял, что второй запрос (после переадресации) также проходит через мой contextAuthenticator
EDIT Пример использования authenticate
директивы
val securedRoutes = authenticate(myContextAuthenticator) { implicit user =>
route1 ~
route2
}
Здесь myContextAuthenticator
имеет тип ContextAuthenticator[User]
и receive
метод является
def receive = runRoute {
otherRoutes ~ securedRoutes
}
Можете ли вы привести пример того, как вы используете 'authenticate' директиву? –
Я добавил пример – maks