java - 如何从过滤器访问应用程序配置文件?

标签 java playframework

我有一个过滤器来过滤来自用户的请求,我检查用户是否有权访问某些页面,但所有用户都可以在没有任何权限的情况下访问某些页面,这是我在 application.conf 上编写的 URL 文件,现在我需要访问此 application.conf 文件顺序以获取有关白名单 URL 的信息。 我的 application.conf 文件如下所示:

allowedPathsWithoutAuthentication = ["api/info"]

我的过滤器如下所示:

public class PageAccessFilter extends Filter {

    @Inject
    public PageAccessFilter(Materializer mat) {
        super(mat);
    }

    @Override
    public CompletionStage<Result> apply(Function<Http.RequestHeader, CompletionStage<Result>> next, Http.RequestHeader rh) {
        // I need to get access to application.conf file right here.
        return CompletableFuture.completedFuture(Results.badRequest("BBBB"));
    }
}

我该怎么做?

最佳答案

我找到了问题的解决方案:

public class PageAccessFilter extends Filter {

    @Inject
    private Config config;

    @Inject
    public PageAccessFilter(Materializer mat) {
        super(mat);
    }

    @Override
    public CompletionStage<Result> apply(Function<Http.RequestHeader, CompletionStage<Result>> next, Http.RequestHeader rh) {
        config.getString("key");
        return CompletableFuture.completedFuture(Results.badRequest("BBBB"));
    }
}

关于java - 如何从过滤器访问应用程序配置文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60489941/

相关文章:

java - 使用 SharedPreferences 的最安全方式

java - 使用 JDOM Java 拆分 XML

java - 执行sql查询时出错

playframework - 在 PlayFramework 中修改 http 结果的正文

Scala 函数需要符号/任何状态数组/序列

java - Spring返回@RequestParam中的记录总数

java - 包含在 Android 上转换为转义表示的特殊字符的字符串 - 如何防止这种情况发生?

scala - JMX 与 Play 2.XX 框架

java - Eclipse Xtend 和静态方法

playframework - 玩框架ES6->ES5转译器?