Post Request中的Ruby NoMethodError(未定义的方法`map')

时间:2013-01-05 23:57:33

标签: ruby post http-post

我正在尝试从ruby应用程序执行POST请求,但是我收到以下错误。

以下是代码:

 def action_reply(token,action_id,reply_text)
  require 'uri'
  require 'net/http'
  require 'net/https'

  @reply = { 'ACTION_ID' => action_id, 'text' => reply_text }.to_json
  #A token is required to do this post
  @token_url = 'https://example.com/reply?oauth_token=' + token
  uri = URI.parse(@token_url)
  response = Net::HTTP.post_form(uri,@reply)
end

我在最后一步中遇到错误:

 NoMethodError (undefined method `map' for #<String:0x000000063798e8>)

知道为什么会这样吗?

谢谢!

1 个答案:

答案 0 :(得分:7)

因为您将字符串传递给期望哈希的方法:删除to_json调用。

不相关,但是有必要让这些实例变量成为实例变量吗?