0
我已配置我的應用程序以進行實時更新。Facebook實時更新 - 獲取空數據
驗證已經完成,當(文本),用戶上傳照片,我得到更新。這很好。但是POST數據是完全空的,沒有數據。
post "/fb_realtime_updates" do
puts params[:object]
end
這將打印「{}」。有什麼我失蹤?
我已配置我的應用程序以進行實時更新。Facebook實時更新 - 獲取空數據
驗證已經完成,當(文本),用戶上傳照片,我得到更新。這很好。但是POST數據是完全空的,沒有數據。
post "/fb_realtime_updates" do
puts params[:object]
end
這將打印「{}」。有什麼我失蹤?
http://www.sinatrarb.com/intro#Accessing%20the%20Request%20Object建議你應該使用
post "/fb_realtime_updates" do
request.body.rewind # in case someone already read it
data = JSON.parse request.body.read
puts data['object']
end
我沒有一個Ruby /西納特拉的環境中進行測試。
不確定你正在使用哪種語言(Ruby?)或HTTP服務器。我建議您記錄POST請求標題和正文,以便您可以確定問題出在FB訂閱還是解析正文。你期望'params'包含被解析爲JSON的請求體嗎?因爲你應該得到一個JSON正文(https://developers.facebook.com/docs/reference/api/realtime/)。 –
@RichardBarnett:我正在使用Sinatra(紅寶石)。 POST數據應該是params集合的一部分,所以在上面的場景中沒有POST數據。如果我稍後有機會,我會啓動wireshark並檢查請求。 – Nippysaurus