Frage

Ich arbeite mit der Puffer App API mit HTTParty, um zu versuchen, Beiträge über die hinzuzufügen /Updates/erstellen Methode, aber die API scheint meinen Parameter "Text" zu ignorieren und macht einen Fehler auf. Wenn ich es über Curl in der Befehlszeile mache, funktioniert es perfekt. Hier ist mein Code:

class BufferApp
    include HTTParty
    base_uri 'https://api.bufferapp.com/1'

    def initialize(token, id)
        @token = token
        @id = id
    end

    def create(text)
        BufferApp.post('/updates/create.json', :query =>  {"text" => text, "profile_ids[]" => @id, "access_token" => @token})
    end 
end

Und ich führe die Methode wie diese aus:

BufferApp.new('{access_token}', '{profile_id}').create('{Text}')

Ich habe hinzugefügt debug_output $stdout an die Klasse und es scheint OK zu posten:

POST /1/updates/create.json?text=Hello%20there%20why%20is%20this%20not%20working%3F&profile_ids[]={profile_id}&access_token={access_token} HTTP/1.1\r\nConnection: close\r\nHost: api.bufferapp.com\r\n\r\n"

Aber ich bekomme einen Fehler. Vermisse ich etwas?

War es hilfreich?

Lösung

Ich habe die überprüft API, und die Updates erwarten, dass der JSON im Postkörper ist, nicht in der Abfragezeichenfolge. Versuchen :body Anstatt von :query:

    def create(text)
        BufferApp.post('/updates/create.json', :body => {"text" => text, "profile_ids[]" => @id, "access_token" => @token})
    end
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top