我已经在本地计算机上安装了Swagger UI。当我调出一些 Swagger 定义时,定义工作正常,但是,当我单击"Try it out!"
按钮时,调用失败,说明"No response from server"
。
但是,当我从 Swagger UI 获取请求 URL 并直接在浏览器中运行它时,服务器会响应 (BAU)。
我错过了什么吗?我是否需要设置/配置 Swagger UI 才能进行此调用?
注意:我刚刚下载了最新版本的Swagger,并使用Tomcat服务器在Windows桌面上本地运行它。
请帮忙。
Swagger-ui 的规范通常是 JSON 格式,其中包含主机(包括端口)、basePath、路径(每个 API 服务的路径数组)。Swagger-client 将从所有这些属性构造请求 URL,并将请求发送到带有"接受"标头的 URL。现在无法从服务获得响应,您需要检查后端服务是否正在运行。您可以打开浏览器开发工具来捕获 HTTP 请求并查看它是否正确。
您可以转到 http://petstore.swagger.io/以查看其工作原理。
虽然与OP的问题不完全相关,但我的问题是响应没有出现在页面上。
将缺少的responses
设置添加到每个相应的 HTTP 方法解决了该问题。
"paths": {
"/path": {
"get": {
"description": ...,
"parameters": [ ... ],
"responses": {}
}
}
}
<小时 />另外,提醒一下:可以在浏览器的开发人员工具网络选项卡中检查请求,以读取响应标头和正文。