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

Respuestas a la pregunta(3)

Su respuesta a la pregunta