Swagger UI REST URL 后缀(.json) 404错误
Swagger UI REST URL suffix (.json) 404 error
我已经部署了一个测试 Grape REST API,我正在尝试使用 Swagger 对其进行测试 UI。
问题在于,当 Swagger UI 加载 API 规范时,它会在后缀中添加括号:http://arcane-shore-2642.herokuapp.com/api/v1/todos(.json)
这会导致 404 错误,因为 (.json) 后缀无效。
它调用的URL应该是这样的:http://arcane-shore-2642.herokuapp.com/api/v1/todos
或者这样:http://arcane-shore-2642.herokuapp.com/api/v1/todos.json
我该如何解决这个问题?
更多有效路线:
http://arcane-shore-2642.herokuapp.com/api/v1/todos/1
http://arcane-shore-2642.herokuapp.com/api/v1/items/1
http://arcane-shore-2642.herokuapp.com/api/v1/todos/1/items
http://arcane-shore-2642.herokuapp.com/api/v1/todos/1.json
http://arcane-shore-2642.herokuapp.com/api/v1/items/1.json
http://arcane-shore-2642.herokuapp.com/api/v1/todos/1/items.json
我今天遇到了同样的问题。这是因为原始 API 规范数据来自 grape-swagger
gem 具有“(.json)”(或格式)后缀。
{
apiVersion: "0.1",
swaggerVersion: "1.2",
resourcePath: "/hotels",
produces: [
"application/json"
],
apis: [
{
path: "/hotels.{format}",
operations: [
...
add_swagger_documentation
配置设置hide_format
可以隐藏格式后缀。但是,选项 hide_format
在最新发布的 grape-swagger
(0.10.1) 版本和最新的 grape
(0.12.0) 中仍然存在问题。
所以需要指定开发grape-swagger
然后设置hide_format
.
宝石文件
gem 'grape-swagger', github: "tim-vandecasteele/grape-swagger"
你的根API
add_swagger_documentation hide_format: true
我已经部署了一个测试 Grape REST API,我正在尝试使用 Swagger 对其进行测试 UI。
问题在于,当 Swagger UI 加载 API 规范时,它会在后缀中添加括号:http://arcane-shore-2642.herokuapp.com/api/v1/todos(.json)
这会导致 404 错误,因为 (.json) 后缀无效。
它调用的URL应该是这样的:http://arcane-shore-2642.herokuapp.com/api/v1/todos
或者这样:http://arcane-shore-2642.herokuapp.com/api/v1/todos.json
我该如何解决这个问题?
更多有效路线:
http://arcane-shore-2642.herokuapp.com/api/v1/todos/1
http://arcane-shore-2642.herokuapp.com/api/v1/items/1
http://arcane-shore-2642.herokuapp.com/api/v1/todos/1/items
http://arcane-shore-2642.herokuapp.com/api/v1/todos/1.json
http://arcane-shore-2642.herokuapp.com/api/v1/items/1.json
http://arcane-shore-2642.herokuapp.com/api/v1/todos/1/items.json
我今天遇到了同样的问题。这是因为原始 API 规范数据来自 grape-swagger
gem 具有“(.json)”(或格式)后缀。
{
apiVersion: "0.1",
swaggerVersion: "1.2",
resourcePath: "/hotels",
produces: [
"application/json"
],
apis: [
{
path: "/hotels.{format}",
operations: [
...
add_swagger_documentation
配置设置hide_format
可以隐藏格式后缀。但是,选项 hide_format
在最新发布的 grape-swagger
(0.10.1) 版本和最新的 grape
(0.12.0) 中仍然存在问题。
所以需要指定开发grape-swagger
然后设置hide_format
.
宝石文件
gem 'grape-swagger', github: "tim-vandecasteele/grape-swagger"
你的根API
add_swagger_documentation hide_format: true