2013-02-18 23 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