用net/http怎么传递认证?

用net/http怎么传递认证?

require 'net/http'
  require 'uri'
  Net::HTTP.get_print URI.parse('http://www.example.com/index.html')


一般直接打印所需页面的xml时,用上面的语句就足够了,但是,如果要取得的xml需要id认证,那么,id参数怎么传递?
你可以试试mechanize

[Copy to clipboard] [ - ]
请解释一下什么是"xml需要id认证"
如果是HTTP Base auth认证,可以可以将认证用户名,密码放到请求头里面传过去
新建一个request对象实例,然后
request.basic_auth(username, password)
如果是https连接,道理类似

建议你一个技巧,就是不要直接上来就ruby代码抓页面,先用curl测试
curl -u 'username':'password' \
-H 'Content-Type: application/soap+xml; charset=utf-8;' \
--url "target_address" \
-d 'request body'
这样,具体用法查curl文档或者google,curl调试通了在用ruby实现,道理完全相同
引用:
原帖由 lgn21st 于 2008-3-13 16:35 发表
建议你一个技巧,就是不要直接上来就ruby代码抓页面,先用curl测试
curl -u 'username':'password' \
-H 'Content-Type: application/soap+xml; charset=utf-8;' \
--url "target_address" \
-d 'request body'
这样,具体用法查curl文档或者google,curl调试通了在用ruby实现,道理完全相同
wget呀,呵呵,现在我还天天再用呢
谢谢你们,这么热心的帮我解答,还有不同方法。谢谢!!
不过我没有几个R币了,所以在这儿多解几声……
你真是个好人!