Доступ к текущим метаданным маршрута в перехватчике Redstone
Как я могу получить доступ к метаданным маршрута или группы из перехватчика?
Я хотел бы добавить @public() к маршруту, например:
@app.Route("/user/find/:id")
@public()
getUser(String id) => {"name": "User", "login": "user"};
И создайте перехватчик, который блокирует доступ к маршрутам, у которых нет общедоступных метаданных и нет зарегистрированного пользователя. Это возможно?
@app.Interceptor(r'/admin/.*')
adminFilter() {
if (app.request.session["username"] != null || CURRENT_ROUTE_HAS_PUBLIC_METADATA) {
return app.chain.next();
} else {
return app.chain.abort(HttpStatus.UNAUTHORIZED);
//or app.chain.redirect("/login.html");
}
}
1 ответ
Решение
Я добавил опцию в пакет, который предоставляет метод mirror и group mirror. С этим я мог бы получить все общедоступные методы с их открытым шаблоном маршрута.