logo       

[ruby-list:42085] Re: [Q] http get 時の form への入力について: msg#00116

lang.ruby.japanese

Subject: [ruby-list:42085] Re: [Q] http get 時の form への入力について

In article
<533a4b750604212002n3beb364cla96fa24f35ee7089-JsoAwUIsXosN+BqQ9rBEUg@xxxxxxxxxxxxxxxx>,
"ITSUMI ken-ichi" <itsumi.ml-Re5JQEeQqe8AvxtiuMwx3w@xxxxxxxxxxxxxxxx> writes:

> open で、直接パラメータを書き込んでやると動くんですが
> require 'open-uri'
> open("http://seibun.nosv.org/?p=test";) {|f|
> f.each_line {|line| p line}
> }
>
> ↓みたいに、ハッシュとして与えてやると動きません(パラメータを与えない
> のと同じ動作になります)
>
> open("http://seibun.nosv.org/";, {"p" => "test"}) {|f|
> f.each_line {|line| p line}
> }

私の知る限り、ハッシュを与えて form な query を生成するメソッ
ドは標準でついてくる範囲にはないと思います。
(もしこれが勘違いで何かあったら教えてください。)

文字列を与えて form な query の key や value を得るものは
CGI.escape (など) がありますので、次のような感じになるでしょ
うか。

% ruby -ropen-uri -rcgi -e '
u = URI("http://seibun.nosv.org/";)
u.query = "p=" + CGI.escape("test")
puts u.read'
--
[田中 哲][たなか あきら][Tanaka Akira]




<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise