2009-01-21 51 views

回答

0

發佈我的問題後,我嘗試了更多的東西,並找到了我自己的答案。你可以像下面的內容:

response = request('/widgets/2222', 
        :method => "GET", 
        "X_HTTP_AUTHORIZATION" => 'Basic ' + ["myusername:mypassword"].pack('m').delete("\r\n")) 

我可以避開更新的書,但至少這是信息這裏谷歌找到,並可能幫助別人。

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 

你需要在配置/ router.rb定義merb_auth_slice,如果它不是已經替您完成:

Merb::Router.prepare do 
    slice(:merb_auth_slice_password, :name_prefix => nil, :path_prefix => "") 
end