如何获取HTTPRequest POST数据?
我正在使用 Mongrel 用 Ruby 实现一个小型 HTTP 服务器。我的代码当前如下所示:
require 'mongrel.rb'
class SimpleHandler < Mongrel::HttpHandler
def process(request, response)
puts request.body # outputs #<StringIO:0xb7656e74>
response.start(200) do |head,out|
head["Content-Type"] = "application/ocsp-responder"
out.write("hello!\n")
end
end
end
h = Mongrel::HttpServer.new("127.0.0.1", "5000")
h.register("/", SimpleHandler.new)
h.run.join
正如您在我的示例中看到的,request.body 不输出 POST 数据。我怎样才能得到它?
I'm implementing a small HTTP server with Ruby using Mongrel. My code currently looks like this:
require 'mongrel.rb'
class SimpleHandler < Mongrel::HttpHandler
def process(request, response)
puts request.body # outputs #<StringIO:0xb7656e74>
response.start(200) do |head,out|
head["Content-Type"] = "application/ocsp-responder"
out.write("hello!\n")
end
end
end
h = Mongrel::HttpServer.new("127.0.0.1", "5000")
h.register("/", SimpleHandler.new)
h.run.join
As you can see in my sample, request.body does not output the POST data. How can I get it?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
StringIO#read 应该这样做:
StringIO#read should do it: