Ruby on rails 通过curl调用rails api
我的移动应用程序正在尝试调用Rails应用程序。我试着用下面的命令通过curl测试API,结果它成功了Ruby on rails 通过curl调用rails api,ruby-on-rails,ruby,curl,afnetworking,Ruby On Rails,Ruby,Curl,Afnetworking,我的移动应用程序正在尝试调用Rails应用程序。我试着用下面的命令通过curl测试API,结果它成功了 curl -d "user[name]=bob&user[email]=bob0814@example.com&user[password]=password&user[company_name]=hydra" linktomyapi 现在,我尝试运行以下命令,因为当我通过移动应用程序发送参数时,我会将它们作为JSON格式发送,因为我对所有网络呼叫使用AFNetwor
curl -d "user[name]=bob&user[email]=bob0814@example.com&user[password]=password&user[company_name]=hydra" linktomyapi
现在,我尝试运行以下命令,因为当我通过移动应用程序发送参数时,我会将它们作为JSON格式发送,因为我对所有网络呼叫使用AFNetworking,请参见下文,但这不起作用
curl -v -d '{"user[name]": "bob","user[email]": "bob@gmail.com","user[password]": "password","user[company_name]": "rs"}' linktoMyApi
我很困惑为什么会有这种差异?有人能提出一些建议吗?您必须传递一个application/json内容类型,这样rails才能理解您在说json 添加到您的curl选项:
-H'内容类型:application/json'
此外,如果要使用params[:user]
访问参数,则必须使用json对象“user”来保存所有值:
{"user" : {"name": "bob", "email": "bob@gmail.com", "password": "password", "company_name": "rs"}}
您是否已指定格式为json?你收到的错误消息是什么?上面写着400-请求错误。我以前在iOS应用程序中为另一个视图做过类似的操作,效果很好。我仍然会遇到同样的错误。谢谢你的回复。你能粘贴rails服务器日志吗?这样我们就可以了解发生了什么事。看起来它正在工作。让我再做几个测试,我将结束这个问题。