Webrick
+を使用していCGI
ますが、インスタンス化するとエラーが返されます。(offline mode: enter name=value pairs on standard input)
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を見つけることができない場合)、CGIオブジェクトは「オフライン」モードで実行されます。このモードでは、コマンドラインから、または(失敗した場合は)標準入力からパラメーターを読み取ります。
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
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>
rubyでCGIを操作するコード例の詳細については、PLEAC-RubyのCGIプログラミングドキュメントを参照してください。