我正在学习ruby on rails
我有白色这个代码做登录和autenticate编辑后,但我不知道如何做注销,我只能登录,然后我不能做注销,请帮助我
class PostsController < ApplicationController
http_basic_authenticate_with :name => 'admin', :password => 'meteoro', :except => [:index, :show]
# GET /posts
# GET /posts.json
def index
@posts = Post.all
respond_to do |format|
format.html # index.html.erb
format.json { render json: @posts }
end
end
谢谢
4条答案
按热度按时间3okqufwl1#
您需要强制客户端释放
Authorization
头,方法是强制它向另一个请求发出请求下面是我如何做到的,在/logout视图中,使用jQuery AJAX 调用:
62o28rlo2#
如果你想让用户注销,你可以添加一个空用户名和密码的新操作。例如:
还添加注销路由
并在任何视图文件中添加注销链接
当用户单击“注销”链接时,它请求登录。2空的“确定”将注销用户。
sz81bmfz3#
HTTP是无状态的,所以它实际上是浏览器(客户端)和服务器的一个约定,让你为给定的请求“登录”。Check out the answer in this post--重要的部分是,一旦身份验证完成,服务器将响应一个
Authorization
头,浏览器将返回该头。bweufnob4#
默认情况下,您输入的凭据存储在静态标头中,实际上没有办法从系统注销...
阅读此维基百科条目http://en.wikipedia.org/wiki/Basic_access_authentication#Disadvantages