Ruby 1.9.2 リファレンスマニュアル > ライブラリ一覧 > net/httpライブラリ > Net::HTTPクラス > get

instance method Net::HTTP#get

get(path, header = nil, dest = nil) -> Net::HTTPResponse[permalink][rdoc]
get(path, header = nil, dest = nil) {|body_segment| .... } -> Net::HTTPResponse

サーバ上の path にあるエンティティを取得し、 Net::HTTPResponse のインスタンスとして返します。

header が nil でなければ、リクエストを送るときにその内容を HTTP ヘッダとして 送ります。 header は { 'Accept' = > '*/*', ... } という 形のハッシュでなければいけません。

ブロックと一緒に呼びだされたときは エンティティボディを少しずつ文字列として ブロックに与えます。このとき戻り値の Net::HTTPResponse オブジェクトは有効な body を 持ちません。

dest は時代遅れの引数です。利用しないでください。 dest を指定した場合には ボディを少しずつ取得して順次 「dest << ボディの断片」を実行します。

[PARAM] path:
取得するエンティティのパスを文字列で指定します。
[PARAM] header:
リクエストの HTTP ヘッダをハッシュで指定します。
[PARAM] dest:
利用しないでください。

1.1 互換モードの場合は、レスポンスに応じて例外が発生します。 また、返り値が [レスポンスオブジェクト, そのボディ] となります。

# net/http version 1.1
response, body = http.get( '/index.html' )

# net/http version 1.2
response = http.get('/index.html')

# compatible in both version
response , = http.get('/index.html')
response.body

# compatible, using block
File.open('save.txt', 'w') {|f|
  http.get('/~foo/', nil) do |str|
    f.write str
  end
}

[SEE_ALSO] Net::HTTP#request_get