HTTParty发布一些JSON编码的部分,有些不是

时间:2016-01-08 19:57:57

标签: ruby-on-rails json httparty

我正在尝试将一个帖子请求发送到一个单独的应用程序,我需要发送一个不是json编码的匹配签名和json编码的数据。当我尝试这样做时,我一直都会遇到错误,所以我只是不理解如何格式化它,而且我无法在SO或其文档(或网络上的任何其他地方)找到任何示例。< / p>

signature = create_signature

result = HTTParty.post("weburl.com/file/to/post_to.php",
        :body => {[ signature, 
                  :data => { :timestamp => @message.created_at,
                    :url => company.request_host,
                    :name => @message.name,
                    :email => @message.email,
                    :phone => @message.phone,
                    :product => @message.service,
                    :comments => @message.message
                  }.to_json
                 ]},
        :headers => { 'Content-Type' => 'application/x-www-form-urlencoded' },
        :verify => false )

我目前收到的错误是语法错误,意外&#39;}&#39;,期待=&gt; ]},^

我也尝试过没有阵列,没有数据阵列等。

如何格式化以正确提交此信息?

1 个答案:

答案 0 :(得分:0)

我认为您需要将.to_json移动到对象的末尾。

  :body => {[ signature, 
                      :data => { :timestamp => @message.created_at,
                        :url => company.request_host,
                        :name => @message.name,
                        :email => @message.email,
                        :phone => @message.phone,
                        :product => @message.service,
                        :comments => @message.message
                      }
                     ].to_json},