我在 RoR 3 上编写了 RESTful API。
我必须使我的应用程序不发送“Set-Cookie header”(客户端使用 auth_token 参数进行授权)。
我尝试过使用session :off
and reset_session
但这没有任何意义。
我在用devise
作为身份验证框架。
这是我的应用程序控制器
class ApplicationController < ActionController::Base
before_filter :reset_session #, :unless => :session_required?
session :off #, :unless => :session_required?
skip_before_filter :verify_authenticity_token
before_filter :access_control_headers!
def options
render :text => ""
end
private
def access_control_headers!
response.headers["Access-Control-Allow-Origin"] = "*"
response.headers["Access-Control-Allow-Methods"] = "GET, POST, PUT, DELETE, OPTIONS"
response.headers["Access-Control-Allow-Credentials"] = "true"
response.headers["Access-Control-Allow-Headers"] = "Content-type"
end
def session_required?
!(params[:format] == 'xml' or params[:format] == 'json')
end
end
Use the 内置选项.
env['rack.session.options'][:skip] = true
或同等的
request.session_options[:skip] = true
您可以在这里找到它的文档https://github.com/rack/rack/blob/master/lib/rack/session/abstract/id.rb#L213 https://github.com/rack/rack/blob/master/lib/rack/session/abstract/id.rb#L213
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)