Rails接口自动化工具swagger环境配置

1 软件环境及插件

1.1 软件环境

  • Mac OS10.13.2
  • ruby
  • rails

1.2 插件

  • grape
  • swagger-docs
  • grape-swagger
  • grape-swagger-rails

2 API文件结构

2.1 结构树

API接口结构树如图2.1所示。
API接口结构树

2.2 api.rb结构

  • 代码结构
require ‘grape-swagger’
class Api < Grape::API
format :json
content_type :json, ‘application/json;charset=utf-8’
prefix :api
mount V1::Home
add_swagger_documentation
end

2.3 home.rb结构

  • 代码结构:
module V1
    class Home<Grape::API#继承
        resources :articles do#1#
            desc “API接口”
            params do
                optional :title, type: String, desc: ‘文章标题’
            end
            get “articles” do
            end
end

3新建swagger.rb

swagger目录结构如图3.1所示。
swagger结构
- 代码结构

GrapeSwaggerRails.options.before_action do
        GrapeSwaggerRails.options.app_url=request.protocol+request.host_with_port
end
GrapeSwaggerRails.options.url = ‘/api/swagger_doc.json’
GrapeSwaggerRails.options.app_name= ‘Docapi’
GrapeSwaggerRails.options.doc_expansion = ‘list’

4 配置路径

  • 代码结构
config.paths.add “app/api”, glob: “**/*.rb”
config.autoload_paths +=Dir[“#{Rails.root}/app/api/*”]

5 配置路由

  • 代码结构
mount GrapeSwaggerRails::Engine => '/RailsAPI'

6 接口验证


猜你喜欢

转载自blog.csdn.net/Xin_101/article/details/81639628