Grape-Swagger没有列出基于葡萄的API中包含的方法

时间:2015-05-19 15:35:12

标签: ruby swagger grape api-doc

我正在使用grape-swagger宝石,而我无法在Swagger中正确描述基于葡萄的API。 使用:grape (0.11.0)grape-swagger (0.10.1)

当我启用Swagger json列表时,我得到的输出列出了所有端点,但没有列出每个端点中包含的方法。

我的输出:

{
  "apiVersion": "v0",
  "swaggerVersion": "1.2",
  "produces": [
    "application/json"
  ],
  "apis": [
    {
    "path": "/version.{format}",
    "description": "Operations about versions"
    },
    {
    "path": "/ping.{format}",
    "description": "Operations about pings"
    },
    {
    "path": "/users.{format}",
    "description": "Operations about users"
    },
    {
    "path": "/company.{format}",
    "description": "Operations about companies"
    },
    {
    "path": "/merchants.{format}",
    "description": "Operations about merchants"
    }
  ],
  "info": {}
}

我还在config.ru中添加了CORS Allowance,如下所示:

require 'rack/cors'
use Rack::Cors do
  allow do
    origins '*'
    resource '*',
      headers: :any,
      methods: [:get, :post, :put, :delete, :options]
  end
end

有关如何获取内部列出的每个端点的方法的任何线索?

1 个答案:

答案 0 :(得分:1)

这不是Swagger 1.2的工作方式。

假设您在/api-docs获得了上述JSON,请尝试打开/api-docs/version.json以查看version的操作。当然,如果它不在/api-docs下托管,只需用实际使用的路径段替换该部分。