Rails - 如何访问受登录和保护的文件密码?

时间:2013-10-18 16:49:33

标签: ruby-on-rails ruby url authentication download

在URL上可以访问我要下载的文件。问题是,只有在我登录服务时才可以在URL上访问此文件。

如何从受登录保护的URL下载文件(我有凭据)?在PHP中可能会使用cURL,如何在Ruby中执行此操作?

谢谢

2 个答案:

答案 0 :(得分:0)

阅读HTTP基本身份验证文档:http://ruby-doc.org/stdlib-2.0.0/libdoc/net/http/rdoc/Net/HTTP.html#label-Basic+Authentication

uri = URI('http://example.com/index.html?key=value')

req = Net::HTTP::Get.new(uri)
req.basic_auth 'user', 'pass'

res = Net::HTTP.start(uri.hostname, uri.port) {|http|
  http.request(req)
}
puts res.body

答案 1 :(得分:0)

如果您希望进入一个不仅具有基本身份验证的网站,您应该查看mechanize。例如(关于主题的from a railscast),你可能会这样做:

require 'mechanize'
agent = WWW::Mechanize.new

agent.get("http://railscasts.tadalist.com/session/new")
form = agent.page.forms.first
form.password = "secret"
form.submit

agent.page.link_with(:text => "Wish List").click