2013-02-18 71 views
1

我一直在使用Webrick + CGI当我实例化,将返回一个错误:(offline mode: enter name=value pairs on standard input)Ruby错误Webrick或CGI?

irb(main):001:0> require 'cgi' 
=> true 
irb(main):002:0> cgi = CGI.new 
(offline mode: enter name=value pairs on standard input) 

回答

4

不,不是一个错误。这是它的工作方式。

ruby-docs CGI documentation

If the CGI object is not created in a standard CGI call environment (that is, it can’t locate REQUEST_METHOD in its environment), then it will run in “offline” mode. In this mode, it reads its parameters from the command line or (failing that) from standard input

在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 

Ctrl键d

=> #<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> 

参见CGI Programming Documentation on PLEAC-Ruby用于与红宝石CGI工作的进一步的代码示例。使用的Win7 +的WEBrick服务器

+0

IHAVE,我的代码是: <%Encoding.compatible( “\ XA1” .force_encoding( “ISO-8859-1”), “B”)%?> <!DOCTYPE HTML! PUBLIC“ - // W3C // DTD XHTML 1.0 Strict // EN” \t“http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd”> Sessão

zezzão <% 需要“cgi” 需要“cgi/session” cgi = CGI :: new session = CGI :: Session.new(cgi,“prefix”=>“rubysession”) session [“name”] = “达兰” %> <%= “喂,#{会话[” 名称 “]}” %> <% session.close 使用Session.delete %> – 2013-02-18 13:41:26

+0

每次使用CRTL + D? – 2013-02-20 21:27:08