我是Ruby/Rails中的新成员,我正在尝试创建一个可容纳啤酒模型(名称和酒精百分比)的简单API。我用rails gem rails-api实现了API,但是我在发送POST请求时遇到了问题。由于语法错误(使用邮递员发送请求),我得到了400错误。发送POST请求轨道
我不知道我做错了。这里是我的啤酒控制器:
class BeersController < ApplicationController
before_action :set_beer, only: [:show, :update, :destroy]
# GET /beers
# GET /beers.json
def index
@beers = Beer.all
render json: @beers
end
# GET /beers/1
# GET /beers/1.json
def show
render json: @beer
end
# POST /beers
# POST /beers.json
def create
@beer = Beer.new(beer_params)
if @beer.save
render json: @beer, status: :created, location: @beer
else
render json: @beer.errors, status: :unprocessable_entity
end
end
# PATCH/PUT /beers/1
# PATCH/PUT /beers/1.json
def update
@beer = Beer.find(params[:id])
if @beer.update(beer_params)
head :no_content
else
render json: @beer.errors, status: :unprocessable_entity
end
end
# DELETE /beers/1
# DELETE /beers/1.json
def destroy
@beer.destroy
head :no_content
end
private
def set_beer
@beer = Beer.find(params[:id])
end
def beer_params
params.require(:beer).permit(:name, :percent)
end
end
希望你们能帮我解决这个问题。提前致谢!
当我此请求后,打印日志我得到这个从Heroku的日志:
2015-04-06T11:51:40.715123 + 00:00的Heroku [路由器]:在= INFO方法= POST路径=“/啤酒s“host = drinkapptest.herokuapp.com request_id = e4557a13-1391-4e30-ab8a-069e714b93 d0 fwd =”89.164.165.138“dyno = web.1 connect = 0ms service = 9ms status = 400 bytes = 264
这看起来总体上没问题。你可以分享你正在发布的POST请求吗? – surreymagpie 2015-04-06 09:45:19
对不起,迟到的回答,我使用的邮递员,但我不能因为后低信誉的截图所以这里的截图:http://postimg.org/image/tzvdue4rd/ – itodor 2015-04-06 10:53:06
任一方请求响应或日志文件应该说为什么请求是拒绝 – 2015-04-06 11:05:43