from - Ruby: ¿Solicitud PUT con cuerpo JSON?
ruby http post (2)
La forma más fácil es con Net::HTTP
:
require ''net/http''
http = Net::HTTP.new(''www.data.com'')
response = http.request_put(''/?access_token=123'', jsonbody)
Necesito crear una solicitud HTTP PUT usando ruby.
La solicitud tiene un cuerpo JSON.
Pude generar el cuerpo JSON usando:
require ''rubygems''
require ''json''
jsonbody = JSON.generate["message"=>"test","user"=>"user1"]
Necesito enviar esta solicitud PUT a la url:
require ''open-uri''
url = URI.parse(''http://www.data.com?access_token=123'')
¿Puede alguien decirme cómo puedo hacer esto en Ruby?
Usando restclient ( gem install rest-client ) de esta manera:
require ''rubygems''
require ''rest_client''
require ''json''
jdata = JSON.generate(["test"])
RestClient.put ''http://localhost:4567/users/123'', jdata, {:content_type => :json}
Contra el siguiente servicio de sinatra :
require ''sinatra''
require ''json''
put ''/users/:id'' do |n|
data = JSON.parse(request.body.read)
"Got #{data} for user #{n}"
end
funciona en mi computadora