class Net::HTTPGenericRequest

[edit]

要約

Net::HTTPRequest のスーパークラスです。このクラスは直接は使わないでください。

Net::HTTPRequest のサブクラスを使ってください。

目次

インスタンスメソッド

継承しているメソッド

Net::HTTPHeaderから継承しているメソッド

インスタンスメソッド

body -> String[permalink][rdoc][edit]

サーバに送るリクエストのエンティティボディを返します。



require 'net/http'

uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Post.new(uri.request_uri)
req.body = "Test Post Data"
req.body # => "Test Post Data"

[SEE_ALSO] Net::HTTPGenericRequest#body=

body=(body)[permalink][rdoc][edit]

サーバに送るリクエストのエンティティボディを文字列で設定します。

[PARAM] body:
設定するボディを文字列で与えます。


require 'net/http'

uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Post.new(uri.request_uri)
req.body = "Test Post Data" # => "Test Post Data"

[SEE_ALSO] Net::HTTPGenericRequest#body

body_exist? -> bool[permalink][rdoc][edit]

このメソッドは obsolete です。

Net::HTTPGenericRequest#response_body_permitted? の別名です。

body_stream -> object[permalink][rdoc][edit]
body_stream=(f)

サーバに送るリクエストのエンティティボディを IO オブジェクトなどのストリームで設定します。 f は read(size) メソッドが定義されている必要があります。

[PARAM] f:
エンティティボディのデータを得るストリームオブジェクトを与えます。


require 'net/http'

uri = URI.parse('http://www.example.com/index.html')
post = Net::HTTP::Post.new(uri.request_uri)
File.open("/path/to/test", 'rb') do |f|
  # 大きなファイルを扱う際にメモリ消費を少なくできる
  post.body_stream = f
  post["Content-Length"] = f.size
end
post.body_stream # => #<File:/path/to/test (closed)>
method -> String[permalink][rdoc][edit]

リクエストの HTTP メソッドを文字列で返します。



require 'net/http'

uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Post.new(uri.request_uri)
req.method # => "POST"
req = Net::HTTP::Get.new(uri.request_uri)
req.method # => "GET"
path -> String[permalink][rdoc][edit]

リクエストする path を文字列で返します。



require 'net/http'

uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Get.new(uri.request_uri)
req.path # => "/index.html"
request_body_permitted? -> bool[permalink][rdoc][edit]

リクエストにエンティティボディを一緒に送ることが許されている HTTP メソッド (POST など)の場合真を返します。



require 'net/http'

uri = URI.parse('http://www.example.com/index.html')
post = Net::HTTP::Post.new(uri.request_uri)
post.request_body_permitted?   # => true

head = Net::HTTP::Head.new(uri.request_uri)
head.request_body_permitted?   # => false
response_body_permitted? -> bool[permalink][rdoc][edit]

サーバからのレスポンスにエンティティボディを含むことが許されている HTTP メソッド (GET, POST など)の場合真を返します。



require 'net/http'

uri = URI.parse('http://www.example.com/index.html')
post = Net::HTTP::Post.new(uri.request_uri)
post.response_body_permitted?   # => true

head = Net::HTTP::Head.new(uri.request_uri)
head.response_body_permitted?   # => false