如何记录RESTful API



我是新来的。

是否有像Django REST Swagger这样的RESTful api文档?

然后我找到apipie-rails来记录我的api。

但是当我尝试将它与Spree集成时,我得到了以下错误:

Unable to autoload constant BaseControllerDecorator, expected /${PATH}/base_controller_decorator.rb to define it.

base_controller_decorator.rb

Spree::Api::BaseController.class_eval do
    # Some overrided functions
end

我在lib/apipie/application.rb中找到了以下代码:

def load_controller_from_file(controller_file)
  controller_class_name = controller_file.gsub(/A.*/app/controllers//,"").gsub(/.w*Z/,"").camelize
  controller_class_name.constantize
end

它似乎在装饰文件实例化控制器,如何解决?

如果您正在使用Rails的Grape API框架(我更喜欢),您可以使用https://github.com/ruby-grape/grape-swagger获得自动swagger文档-它将解析定义并动态创建文档。

如果你不需要/不想在Rails或Sinatra或普通Ruby中使用Grape,我建议https://github.com/fotinakis/swagger-blocks。功能强大,但是您需要手动编写定义。