Cómo leer datos POST en la solicitud de rack
Cuando ejecuto el comando curl
curl -v -H "Content-type: application/json" -X POST -d '{"name":"abc", "id":"12", "subject":"my subject"}' http://localhost:9292
para enviar una solicitud POST con datos a mi aplicación Rack, mi código se imprime{}
. Que viene deputs req.POST()
en el código de abajo.
¿Por qué se imprime?{}
En lugar de los datos POST? ¿Y cómo accedo correctamente a los datos de POST en mi aplicación de Rack?
require 'json'
class Greeter
def call(env)
req = Rack::Request.new(env)
if req.post?
puts req.POST()
end
[200, {"Content-Type" => "application/json"}, [{x:"Hello World!"}.to_json]]
end
end
run Greeter.new