fetch(key) -> String
[permalink][rdoc][edit]fetch(key, default) -> String
fetch(key) {|hash| .... } -> String
-
key ヘッダフィールドを返します。
たとえばキー 'content-length' に対しては '2048' のような文字列が得られます。キーが存在しなければ nil を返します。
該当するキーが登録されていない時には、引数 default が与えられていればその値を、ブロックが与えられていればそのブロックを評価した値を返します。
一種類のヘッダフィールドが一つのヘッダの中に複数存在する場合にはそれを全て ", " で連結した文字列を返します。 key は大文字小文字を区別しません。
- [PARAM] key:
- ヘッダフィール名を文字列で与えます。
- [PARAM] default:
- 該当するキーが登録されていない時の返り値を指定します。
- [EXCEPTION] IndexError:
- 引数defaultもブロックも与えられてない時、キーの探索に 失敗すると発生します。
require 'net/http' uri = URI.parse('http://www.example.com/index.html') req = Net::HTTP::Get.new(uri.request_uri) req.fetch("user-agent") # => "Ruby"
require 'net/http' begin req.fetch("content-length") rescue => e e # => #<KeyError: key not found: "content-length"> end
require 'net/http' uri = URI.parse('http://www.example.com/index.html') req = Net::HTTP::Get.new(uri.request_uri) req.fetch("content-length", "default") # => "default"
require 'net/http' uri = URI.parse('http://www.example.com/index.html') req = Net::HTTP::Get.new(uri.request_uri) req.fetch("content-length") { |e| 99 } # => 99
[SEE_ALSO] Net::HTTPHeader#[]