gpt4 book ai didi

ruby-on-rails - 如何为 Rails POST 方法构建 postman 请求

转载 作者:行者123 更新时间:2023-12-04 04:55:00 25 4
gpt4 key购买 nike

无论我如何格式化这个请求的原始部分,我都无法避免下面的解析错误。

我有一个带有通过规范的 create 方法的 Rails API,以说明 Controller 消息是合理的:

describe "POST power_up" do

let!(:client) { FactoryGirl.create :client, name: "joe", auth_token: "asdfasdfasdfasdfasdfasdf" }

it "should create and save a new Power Up" do

expect { post :create, format: :json, power_up: FactoryGirl.attributes_for(:power_up) }.to change(V1::PowerUp, :count).by(1)
end

end

我正在使用 Postman 尝试向它发送邮件。无论我尝试什么,我都会收到错误消息:
Started POST "/v1/power_ups.json" for 127.0.0.1 at 2014-08-30 18:05:29 -0400
Error occurred while parsing request parameters.
Contents:

{
'name': 'foo',
'description': 'bar'
}


ActionDispatch::ParamsParser::ParseError (795: unexpected token at '{
'name': 'foo',
'description': 'bar'
}

postman 请求设置:

screen cap of postman request

我也试过:
{
'power_up': {
'name': 'foo',
'description': 'bar'
}
}

来自 power_ups_controller.rb 中的 create 方法和强参数声明的代码:
def create
@power_up = PowerUp.new(power_up_params)

if @power_up.save!
redirect_to @power_up
end
end

private

def power_up_params
params.require(:power_up).permit(:name, :description)
end

最佳答案

抱歉回答这个问题有点晚了,但可能会帮助别人。

您所需要做的就是-在您的请求 header 中(在 postman 或任何客户端中)添加
Content-Type = 'application/json'
或者,您也可以尝试使用 curl(来源):
curl -X POST -H "Content-Type: application/json" -d '{"power_up": {
"name": "foo",
"description": "bar"
}
}' 127.0.01:3000/v1/power_ups.json

关于ruby-on-rails - 如何为 Rails POST 方法构建 postman 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25587186/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com