vkill'blog 何永鹏

ruby Net::HTTP 的例子

09:08 , vkill
例子包括 modify Request Header 、use Basic auth、use Proxy 等,基本上就是官方提供的例子的集合



require 'net/http'

url=URI.parse("http://test:123456@127.0.0.1:8080/index.html")
#proxy=URI.parse("http://abc:123@127.0.0.1:3128")
proxy=URI.parse(ENV['http_proxy']) if ENV['http_proxy']!=nil
header = {
  'user-agent' => 'antivir-rubyget'
}
proxy ||= false

Net::HTTP.version_1_2

if proxy
  http = Net::HTTP.Proxy(proxy.host, proxy.port, proxy.user, proxy.password).start(url.host, url.port)
else
  http = Net::HTTP.start(url.host, url.port)
end

req = Net::HTTP::Get.new(url.path, header)
req.basic_auth url.user,url.password

resp = http.request(req)

req.each {|i,j|
  puts i + '=>' + j
}
puts resp.http_version
puts resp.code
puts resp.message
resp.each {|i,j|
  puts i + '=>' + j
}
puts resp.body

Last modified by vkill on2009/06/15 09:08
类别:ruby & rails | Tags: , , | 0 条评论, 696 次阅读
网友评论(0):
发表评论:

Nickname: 
Email:
Site URI: