我正在運行一個簡單的Sinatra應用程序,我需要查詢一些數據並通過JSON發送POST到一個webhook URL進行處理。我不知道如何正確格式化我爲HTTParty檢索到的記錄。無法通過HTTParty POST ActiveRecord查詢結果
聯繫人正在打印到/account/{account_id}/contacts.json我希望他們如何,他們的數據只是沒有成功發送。
app.rb
get "/account/:account_id/contacts.json" do
@contacts = Contact.where("sfid = ?", params[:account_id])
HTTParty.post("https://hooks.webapp.com/hooks/catch/387409/1us4j3/",
{
:body => [ @contacts ].to_json,
:headers => { 'Content-Type' => 'application/json', 'Accept' => 'application/json'}
})
@contacts.to_json
end
首先,存在如何差異數據正在打印'@ contacts.to_json'以及它們如何發送'[@contacts] .to_json'。這可能是問題所在。但如果不是這樣,我們需要更多關於你如何確定它沒有被髮送的信息。 –
'where'已經將數組返回給變量'@ contacts'。所以'@ contacts'類型已經是一個數組。我不認爲在轉換爲json之前需要再次轉換爲數組。 ':body => @ contacts.to_json'沒問題。 – Mayank
@AndréGuimarãesSakata我敢肯定,它不會被髮送,因爲我有一個測試路線,發送 HTTParty.post(「https://hooks.webapp.com/hooks/catch/387409/1us4j3/」, { :body => [':'='value1',:privacy =>'value2'}] .to_json, :headers => {'Content-Type'=>'application/json','Accept'=>'application/json'} }) 成功並被webhook捕獲。我在我的問題中發佈的代碼沒有被捕獲。 – csakon