2016-06-26 21 views
-1

Ich sende Postanfrage an facebook graph api mit Httparty gem.
Mein Code istWertänderung der JSON-Daten am Empfängerende

message_data ={ 
     "recipient" => { 
      "id" => recipient_id 
     }, 
     "message" => { 
      "attachment" => { 
       "type" => "template", 
       "payload" => { 
        "template_type" => "generic", 
        "elements" => [ 
         { 
          "title" => "Titilize", 
          "subtitle" => "Subtitle" 
         } 
        ] 
       } 
      } 
     } 
    } 
options ={ 
      "query": {access_token: @page_access_token}, 
      "body": message_data 
     } 
HTTParty.post("https://graph.facebook.com/v2.6/me/messages",options) 

Httparty Daten senden wird durch Hash in json konvertieren.
Problem ist am Endpunkt Daten empfangen nicht anders als ich erwartet (vielleicht httparty wird nicht ordnungsgemäß analysiert).

Jemand mir dabei helfen. Danke

+0

Welche Daten empfängt der Endpunkt? Bitte posten Sie weitere Informationen. – SoAwesomeMan

+0

Welche Daten erwartet der Endpunkt und welcher Code verwendet Httparty zum Senden der Daten? – SoAwesomeMan

+0

@SoAwesomeMan Ich habe meinen Code zur Frage hinzugefügt. Ich weiß nicht, welcher Endpunkt empfangen wird, da Facebook keine Daten zum Debuggen bereitstellt. Aber ich bin sicher, dass ich korrekte Daten sende. Weil ich Anfrage mit Curl getestet habe und es funktioniert. – rock

Antwort

0

Scheint wie Sie müssen die Content-Type Header setzen. Es können Probleme mit der Hash-Syntax sein, abhängig von Ihrer Version von Ruby, so überprüfen Sie diese offene Ticket out: https://github.com/jnunemaker/httparty/issues/472

str = "{\"recipient\":{\"id\":\"1291831200828847\"},\"message\":{\"attachment\":{\"typ‌​e\":\"template\",\"payload\":{\"template_type\":\"generic\",\"elements\":[{\"titl‌​e\":\"Titilize\",\"subtitle\":\"Subtitle\"}]}}}}" 

options { 
    :headers => {"Content-Type" => "application/json"}, 
    :query => {access_token: @page_access_token}, 
    :body => str 
} 

HTTParty.post("https://graph.facebook.com/v2.6/me/messages", options)