我使用Webrick+ CGI,当我实例化时,返回一个错误:(offline mode: enter name=value pairs on standard input)
Run Code Online (Sandbox Code Playgroud)irb(main):001:0> require 'cgi' => true irb(main):002:0> cgi = CGI.new (offline mode: enter name=value pairs on standard input)
不,不是错误.这就是它的工作方式.
如果CGI对象不是在标准CGI调用环境中创建的(也就是说,它无法在其环境中找到REQUEST_METHOD),那么它将以"离线"模式运行.在此模式下,它从命令行读取其参数或从标准输入中读取(失败)
在irb控制台中,在(offline mode: enter name=value pairs on standard input)消息之后,控制台正在等待您输入值.输入,key value pairs然后输入Ctrld完成数据.
irb(main):001:0> require 'cgi'
=> true
irb(main):002:0> cgi = CGI.new
(offline mode: enter name=value pairs on standard input)
name=Prakash
number=432
Run Code Online (Sandbox Code Playgroud)
Ctrld
=> #<CGI:0x007fa4eb2abd30 @options={:accept_charset=>"UTF-8"}, @accept_charset="UTF-8", @multipart=false, @params={"name"=>["Prakash"], "number"=>["432"]}, @cookies={}, @output_cookies=nil, @output_hidden=nil>
irb(main):003:0>
Run Code Online (Sandbox Code Playgroud)
有关在Ruby中使用CGI的更多代码示例,请参阅PLEAC-Ruby上的CGI编程文档.