我正在使用rails 4.1.8。我已经创建了一个API,用户可以通过会话#create创建auth_token,但是现在当我尝试访问会话#destroy时,它的响应是“错误:请在继续之前登录或注册”。
会话控制器
def destroy
user = User.find_by(authentication_token: request.headers['Authorization'])
user.generate_authentication_token!
user.save
head 204
end
当我通过邮递员发布到http://localhost:3000/api/users/sign_out时,它给出了上面定义的错误。
路由
GET /api/users/sign_out(.:format) api/devise/sessions#destroy
GET /api/users/sign_in(.:format) api/sessions#new
POST /api/users/sign_in api/sessions#create
DELETE /api/users/sign_out api/sessions#destroy
我想调用destroy以便它可以生成新的令牌。怎么称呼它?
答案 0 :(得分:0)
我无法在会话控制器中调用它,最后我在用户控制器中编写了这个destroy方法并从那里调用它。如果有人知道答案,请发布,因为这只是一个临时解决方案。