我正在尝试使用Shoes的download()方法在HTTP标头中传递用户名和密码来验证HTTP请求(与Rails应用程序通信)。
对于这些东西,我有点像新手。
我不太清楚我是否应该能够自动使用以下语法(用户名:pwd @),或者是否应该在HTTP标头内手动创建用户名和密码(我认为我也可以使用以下方法访问:下载方法的标题)。
download "http://username:pwd@127.0.0.1:3000/authenticate", :method => "POST" do |result|
# process result.response.body here
end
任何帮助将不胜感激
答案 0 :(得分:2)
我可以回答我自己的问题吗?
这似乎可以解决问题:
require 'base64'
< ...剪断...>
# create the headers
headers = {}
headers['Authorization'] = 'Basic ' + encode64("#{@login.text()}:#{@pword.text()}").chop
# run the download
download "#{$SITE_URL}/do_something", :method => "GET", :headers => headers do |result|
@status.text = "The result is #{result.response.body}"
end