instance method Net::HTTP#get

get(path, header = nil, dest = nil) -> Net::HTTPResponse[permalink][rdoc][edit]
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