Merb Open Source Book有一章是关于身份验证的。但是,测试经过身份验证的请求部分示例仅显示了您可以对基于表单的身份验证执行哪些操作。我有一个要使用 HTTP 基本身份验证测试的 Web 服务。我该怎么做?
问问题
227 次
2 回答
0
发布我的问题后,我尝试了更多的东西并找到了自己的答案。您可以执行以下操作:
response = request('/widgets/2222',
:method => "GET",
"X_HTTP_AUTHORIZATION" => 'Basic ' + ["myusername:mypassword"].pack('m').delete("\r\n"))
我可能会花时间更新这本书,但至少这些信息可供 Google 查找并可能帮助其他人。
于 2009-01-21T23:06:34.110 回答
0
以下是控制器内部 HTTP 基本身份验证的示例:
class MyMerbApp < Application
before :authenticate, :only=>[:admin]
def index
render
end
def admin
render
end
protected
def authenticate
basic_authentication("Protected Area") do |username, password|
username == "name" && password == "secret"
end
end
end
如果还没有为您完成,您需要在config/router.rb中定义 merb_auth_slice:
Merb::Router.prepare do
slice(:merb_auth_slice_password, :name_prefix => nil, :path_prefix => "")
end
于 2009-01-22T01:37:13.510 回答