首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >openapi3与网络流量函数方式的集成不起作用。

openapi3与网络流量函数方式的集成不起作用。
EN

Stack Overflow用户
提问于 2022-06-14 17:38:29
回答 1查看 41关注 0票数 0

我正在尝试将openapi3与反应性集成。但是我总是从其他路由配置.andOther(route(RequestPredicates.all(), errorHandler::invalidVersion))获得错误消息“无效版本”。如果我删除了这个验证工具,那么验证就可以了,但是版本验证是failing.below,这是我的自定义路由器。

代码语言:javascript
运行
复制
route()
        .add((RouterFunction<ServerResponse>) routerFunctionMappings
            .stream()
            .map(routemapping -> Tuples.of(routemapping.getVersion(),
                routeForVersion(routemapping.getRouteMapping())))
            .reduce(Tuples.of("test", route()), (tupel2RouteFunction1, tupel2RouteFunction2) ->
                Tuples.of("test", tupel2RouteFunction1
                    .getT2()
                    .path(
                        tupel2RouteFunction2.getT1(),
                        () -> (RouterFunction<ServerResponse>) tupel2RouteFunction2
                            .getT2()
                            .build()
                            .andOther(
                                route(RequestPredicates.all(), handler::validate)))))
            .getT2()
            .build()
            .andOther(route(RequestPredicates.all(), errorHandler::invalidVersion)))
        .build()
        .filter(filterFunction());

请帮助我解决这个问题,使验证和招摇过市工作。

EN

回答 1

Stack Overflow用户

发布于 2022-06-23 11:29:46

我找到了解决办法。当我将该行.andOther(route(RequestPredicates.all(), errorHandler::invalidVersion))更新为.andOther(route(RequestPredicates .pathPredicates(PathPatternParser.defaultInstance) .apply("/swagger-doc/**").negate(), errorHandler::versionNotSupported))时,这一问题得到了解决。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72621263

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档