rails grape 的使用详解

本文介绍了如何在Rails中使用Grape框架创建API。首先,通过添加gem 'grape'、'grape-jbuilder'和'jbuilder'到Gemfile并安装。接着,创建app/api/api.rb文件,定义API版本、格式和路由。然后,在config/application.rb和config/routes.rb中配置加载路径和路由。最后,设置jbuilder视图并测试API。通过访问http://localhost:3000/api/v1/aaa/test可查看API效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、gem准备

      gem 'grape','~> 0.8.0'
      gem 'grape-jbuilder', '~> 0.2.0'

      gem 'jbuilder', '~> 2.0'

2、建立目录app/api/api.rb然后编写api.rb如下

class API < Grape::API
    version 'v1', using: :path
    format :json
    formatter :json, Grape::Formatter::Jbuilder
    prefix :api


    resource :aaa do
      desc "Return a public timeline."
      get :test  do
        @jacket = Jacket.first
      end
    end
end

3、配置

在config/application.rb 下添加

config.paths.add File.join('app', 'api'), glob: File.join('**', '*.rb')
    config.autoload_paths += Dir[Rails.root.join('app', 'api', '*')]

在config/routes 下添加

mount API => '/'

此时重启服务器就ok了。

测试自己api   http://localhost:3000/api/v1/aaa/test

4、对于jbuilder

   首先建立views/api/aaa/test.jbuilder目录

修改api在api名称后边加上,jbuilder:"aaa/test"

在test.jbuilder里边加入需要显示的信息

要在api里边加入

formatter :json, Grape::Formatter::Jbuilder
在 config/application.rb加入
config.middleware.use(Rack::Config) do |env|
    env['api.tilt.root'] = Rails.root.join 'app', 'views', 'api'
  end
ok大功告成

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值