首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >API -第一个rest端点没有列出在jhipster网关API部分(swagger-ui)

API -第一个rest端点没有列出在jhipster网关API部分(swagger-ui)
EN

Stack Overflow用户
提问于 2019-01-13 18:25:53
回答 1查看 1.2K关注 0票数 2

使用jhipster 5.7.2

我创建了一个api网关和两个微服务。在第一个过程中,我创建了一个实体,它在网关后面完美地工作。网关显示生成实体的api端点。

我生成了第二个微服务,但是这次我已经在yml文件中定义了一个api,所以我选择了‘API’。我的api是使用open 3定义的,我使用那里的指示成功地为我的api生成了代码,并使用curl测试了直接调用我的微服务端点:它在这一点上如预期的那样工作。

问题是:当我将微服务放在网关后面时,网关看不到api。当我转到api菜单时,我的微服务显示在下拉列表中,但当我选择它时,它没有显示端点。

我在搜索时发现的一件奇怪的事情是,当我直接调用我的微服务上的以下url时:http://localhost:8082/v2/api-docs (正如微服务的“欢迎页面”中指出的那样),我得到了:

代码语言:javascript
复制
{"swagger":"2.0","info":{"description":"my micro-service API documentation","version":"0.0.1","title":"api-first micro-service API","contact":{},"license":{}},"host":"localhost:8082","basePath":"/"}

当我的yml文件声明openapi 3.0.1时,它写着‘swagger2.0’。我搜索并找到了本期,上面写着:

使用的是Swagger非常旧的版本(2.2.10),它不支持Open

我认为openapi是问题所在,所以我将yml文件重写为swagger2.0,最后我也遇到了同样的问题:微服务API工作,但网关似乎看不到它。

我开始怀疑这是不是我这边的问题。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-01-15 18:00:53

默认情况下,JHipster将Swagger配置为只列出以api开头的API端点。这是在application.yml中配置的,将default-include-pattern更改为包含其他路径。例如,要包含以/api//expires/开头的端点,可以使用以下方法:

代码语言:javascript
复制
swagger:
    default-include-pattern: /(api|expires)/.*
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54171883

复制
相关文章

相似问题

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