重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

rubyでCGIのパラメータを一つの変数に&でつないで格納したいです。
(パラメータなしの場合は""にしたい。)

ex1) hoge.cgi
→para=>""

ex2) hoge.cgi?a=1
→para=>"a=1"

ex3 hoge.cgi?a=1&b=2
→para=>"a=1&b=2"

どう書いたらよいでしょうか?

A 回答 (2件)

> rubyでCGIのパラメータを一つの変数に&でつないで格納したいです。



ENV["QUERY_STRING"] に入っている内容そのままでは?
    • good
    • 0
この回答へのお礼

>ENV["QUERY_STRING"] に入っている内容そのままでは?
まさにそうでしたね(^^; ご回答ありがとうございます。

GETに限った質問をしておいてなんなんですが、POSTでも汎用的にCGIのパラメータを一つの変数に&でつないで格納するには、どしたら良いでしょう?

POSTだと["QUERY_STRING"] に値が入ってこないようで

お礼日時:2007/12/12 14:05

POST経由の入力の場合、cgi.rb を使っているのであれば


cgi = CGI.new
cgi['フィールド名']

で取れます。
http://www.ruby-lang.org/ja/man/index.cgi?cmd=vi …


cgi.rbを使ってなくて自力でやるなら、
ENV[CONTENT_LENGTH]に、POSTされたデータの長さが入っているので、
この長さだけ標準入力から読めば
そのまま手に入れられます。

というところでどうでしょうか?
    • good
    • 0
この回答へのお礼

sakusaker7さん。いつもありがとうございます。

もう少し自分でマニュアル読むようにします。(^^;

お礼日時:2007/12/13 11:20

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!