Ruby on rails Rails在解析json多部分表单时遇到问题?

Ruby on rails Rails在解析json多部分表单时遇到问题?,ruby-on-rails,ruby-on-rails-3,json,curl,multipart,Ruby On Rails,Ruby On Rails 3,Json,Curl,Multipart,我在理解为什么Rails 3.2.6解析包含json的多部分POST请求时遇到了一些问题 “违规”curl命令: curl -i -X POST --silent http://localhost:3000/foo.json --form foo='{"name":"bar"};type=application/json' Rails解释为: p params[:foo] #=> "{\"name\":\"bar\"}" 请注意,该值是一个字符串,而不是(已解析JSON的)散列 cur

我在理解为什么Rails 3.2.6解析包含json的多部分POST请求时遇到了一些问题

“违规”curl命令:

curl -i -X POST --silent http://localhost:3000/foo.json --form foo='{"name":"bar"};type=application/json'
Rails解释为:

p params[:foo] #=> "{\"name\":\"bar\"}"
请注意,该值是一个字符串,而不是(已解析JSON的)散列

curl发送的标题似乎正确:

> POST /foo.json HTTP/1.1
> User-Agent: curl/7.21.4 (universal-apple-darwin11.0) libcurl/7.21.4 OpenSSL/0.9.8r zlib/1.2.5
> Host: localhost:3000
> Accept: */*
> Content-Length: 208
> Expect: 100-continue
> Content-Type: multipart/form-data; boundary=----------------------------959d0620faa3
multipart的类型似乎也正确:

------------------------------959d0620faa3
Content-Disposition: form-data; name="foo"
Content-Type: application/json

{"name":"bar"}
------------------------------959d0620faa3--
有没有人能帮我理解,与字符串表示相反,params[:foo]返回解析后的json哈希的最佳方法是什么


谢谢。

Rails默认情况下不解析json参数,您必须手动解析。

有人能详细说明一下他的curl语句应该如何读取吗?