繁体   English   中英

Ruby on Rails API,适合初学者json响应

[英]Ruby on Rails API for beginner json response

我是红宝石的新手。 如果这个问题可能很愚蠢,我会为此道歉...但是我无法弄清楚,我所看到的教程使这个简单的任务变得令人困惑。 或者,我只是不了解自己所缺少的或该怎么做...如果分步教程可能有所帮助,谢谢!

我的任务是制作可以通过邮递员/ DH传递JSON的Rails API。 有效载荷将为{“ value”:“ foo”}。 有效负载为{“ value”:“ bar”}的'200(OK)'响应

不需要数据库,只需一个控制器即可接收有效负载并返回响应。

这就是我所知道的...

  1. 我所知道的是如何通过“ rails new testrails --api”创建rails api
  2. 然后转到我的“ gemfile”并在gems中安装某种json。
  3. 然后...我搞砸了config中的“ route.rb”文件和“ apps”中的控制器。
  4. 我在这里迷路了如何处理路由文件和控制器...
  5. 接下来会发生什么。

步骤1:安装Rails 5

$ gem install rails

步骤2:创建仅API的Rails应用程序

$ rails new my_app --api

步骤3:整合机架式芯

$RAILS_ROOT/Gemfile的底部添加gem 'rack-cors'$RAILS_ROOT代表rails应用的根目录),然后

$ bundle install

然后将这些行添加到类定义内的$RAILS_ROOT/config/application.rb

config.middleware.insert_before 0, Rack::Cors do
  allow do
    origins '*'
    resource '*', :headers => :any, :methods => [:get, :post, :patch, :put, :delete, :options]
  end
end

步骤4:生成一个控制器

$ rails g controller foo

将操作添加到FooController (在$RAILS_ROOT/controllers/foo_controller.rb

def create
  foo = params[:foo]
  # Do whatever you want with foo
  render json: {value: 'bar'}
end

第5步:添加路线

修改文件$RAILS_ROOT/config/routes.rb ,添加

post '/foo' => 'foo#index'

在街区

步骤6:启动Rails服务器

$ rails s

就这样。 现在,您可以将POST请求发送到http://localhost:3000/foo ,看看会发生什么。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM