繁体   English   中英

Swagger API过滤似乎不起作用

[英]Swagger API filtering doesn't seem to work


我已经编写了一些花哨的代码来使用Swagger API过滤:

public class ApiAuthorizationFilterImpl implements ApiAuthorizationFilter {
    @Override
    public boolean authorize(String apiPath, String method, HttpHeaders headers, UriInfo uriInfo) {
        System.out.println("authorize");
        return true;
    }

    @Override
    public boolean authorizeResource(String apiPath, HttpHeaders headers, UriInfo uriInfo) {
        System.out.println("authorizeResource");
        return true;
    }
}

然后我用这些行扩展了我的web.xml文件:

<init-param>
    <param-name>swagger.security.filter</param-name>
    <param-value>mypackage.rest.utils.ApiAuthorizationFilterImpl</param-value>
</init-param>

但这似乎不起作用。 每当我调用我的REST方法时, ApiAuthorizationFilterImpl中的调试器都没有停止,也没有打印行。
我错过了什么吗?

过滤将应用于文档,而不是方法调用本身。 看看是否直接点击swagger文档资源(即http:// {your-server}:8080 / user.json),您应该看到发出的printlns。

要保护方法本身,您可以编写单独的过滤器,或在swagger和调用过滤器之间共享逻辑。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM