新手问题 Grape-Swagger UI 里面的 URL 后缀问题, hide_format 不工作

springwq · 2015年10月16日 · 最后由 springwq 回复于 2015年10月16日 · 3207 次阅读

grape-swagger 生成的 API 文档是下面这样的: 但是,如果我在这个页面发起 API 请求,一直有 路由报错

ActionController::RoutingError (No route matches [POST] "/v1/user/signin(.json)"):

我在想是不是因为 URL 后面有(.json) 缘故,查看 grape-swagger 文档有 hide_format 参数,但是配置后,还是有 .json 后缀。

add_swagger_documentation(
    :api_version => "v1",
    hide_documentation_path: true,
    hide_format: true
 )

另外,如果 用 Postman 测试,API 一切正常。

Update:

发现是版本问题,用 v0.10.2 就好了。 'grape-swagger', '~> 0.10.2'

没遇到过。我用过 slate 和 swagger, 都不好用,但觉得 slate 稍好。

swagger 确实涉及的组件比较多,很容易出现不兼容问题,grape-swagger 的作者估计快被 grape 的升级弄疯了。

还有一直没有讲,我们的 Swagger UI 还保持在 2.0 版本而不是最新的 2.1,也是为了兼容性。

这个版本会各种坑 - - 特别是 swagger-ui 的版本..

@nouse 昨天第一次搭 swagger, 花了两个半天,看了好几个例子,官方文档也不是很详细。 @hging 确实坑,版本有问题在不在 Readme 里面提示一下。

#4 楼 @springwq 不过用起来还是蛮方便的。至少我个人感觉蛮好的。

#5 楼 @hging 哈哈是的,感觉很 Cool

需要 登录 后方可回复, 如果你还没有账号请 注册新账号