Доступ к текущим метаданным маршрута в перехватчике 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. С этим я мог бы получить все общедоступные методы с их открытым шаблоном маршрута.

Другие вопросы по тегам