ruby on rails -通过Net::HTTP传递数组



我试图通过Net::HTTP传递数组到ruby

def send_p
  x = Net::HTTP.post_form(URI.parse('http://example_domain/example'), to_send)
  render text: x
end
def to_send
  {
    param_a: "foo",
    param_b: [1,2,3]
  }
end

但是当检查http://example_domain/example中的参数时,会得到我

{
  "param_a"=>"foo",
  "param_b"=>"3",
  "action"=>"my_method",
  "controller"=>"my_controller"
}
[1,2,3]

尝试使用HTTParty:

x = HTTParty.post(URI.parse('http://example_domain/example'), to_send)

您可以将数组转换为字符串,然后在从响应中获取参数时进行反向操作。

发送前转换为字符串

param_b: [1,2,3].to_s

你会收到和你发送的完全一样的信息

"param_b"=>"[1,2,3]"

转换回Array

eval(params[:param_b])
# => [1, 2, 3]

相关内容

  • 没有找到相关文章

最新更新