Tag: 基本认证

rails authenticate_or_request_with_http_basic

在我的RoR应用程序中,我需要使用基本身份validation来保护页面,并且我希望每次用户链接到该页面时都会询问凭据。 所以我在操作之前添加了一个filter,如下所示: before_filter :request_confirm, :only => [:delete_device] 过滤方法是: def request_confirm user = User.find_by_id(session[:user_id]) authenticate_or_request_with_http_basic do |nick, pass| nick == user.nickname and pass == user.password end end 没关系,但只是第一次因为rails保存插入的数据,所以以下时间filter将被执行但凭证不会询问。 我不知道保存凭据的位置。 。

在Rails 2.2+中测试HTTP Basic Auth

作为我正在构建的API的一部分,有一种用户身份validation方法,成功时返回有用的用户信息,API令牌等的有效负载。 在为处理此问题的控制器编写function测试时,我遇到了测试HTTP Basic auth的问题; 我发现很多博客提到以下代码应该用于欺骗标头以进行身份​​validation尝试: @request.env[‘HTTP_AUTHORIZATION’] = ActionController::HttpAuthentication::Basic.encode_credentials(email, pass) 问题是这没有效果; authenticate_with_http_basic看不到标题,因此即使存在有效凭据也会返回false。 我错过了什么吗? 请注意,如果在回答中有用,应用程序将被冻结到Rails 2.2.2。