Enviar una consulta de publicación enviada a través de HTTParty
-
26-10-2019 - |
Pregunta
Estoy trabajando con la API de la aplicación Buffer con HttParty para intentar agregar publicaciones a través del /Actualizaciones/Crear Método, pero la API parece ignorar mi parámetro de "texto" y arroja un error. Si lo hago a través de Curl en la línea de comando, funciona perfectamente. Aquí está mi código:
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
Y estoy ejecutando el método como este:
BufferApp.new('{access_token}', '{profile_id}').create('{Text}')
he añadido debug_output $stdout
a la clase y parece estar publicando OK:
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"
Pero recibo un error. ¿Me estoy perdiendo algo?
Solución
Revisé el API, y las actualizaciones esperan que el JSON esté en el cuerpo de la publicación, no en la cadena de consulta. Probar :body
en vez de :query
:
def create(text)
BufferApp.post('/updates/create.json', :body => {"text" => text, "profile_ids[]" => @id, "access_token" => @token})
end
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow