有没有办法禁用 Rails 应用程序的所有 cookie?或者最好在一个控制器一个控制器的基础上?我的问题是关于通过 Adobe Lightroom 插件访问 Rails JSON api。显然,服务器响应中存在任何 cookie 数据会导致 Lightroom 出现错误。
问问题
1531 次
3 回答
4
在要避免使用 cookie 的控制器中,添加以下内容:
after_filter :skip_set_cookies_header
def skip_set_cookies_header
request.session_options = {}
end
如果您有一组 api 控制器,请将其设置在 api_controller 类中,并让您的其他控制器继承 api_controller。
这会跳过设置 Set-Cookie 标头,因为会话选择为空。
于 2012-12-06T20:43:54.630 回答
1
您可能想要使用ActionController::Metal并添加您可能需要的任何其他模块。
ActionController::Metal非常简单,跳过了典型 ApplicationController 的大部分功能,包括 cookie。
您可以调用ApplicationController.ancestors来了解与ActionController::Metal.ancestors相比通常包含的内容
这是我最有可能设置它的方式。
class SimpleController < ActionController::Metal
#include ...
#include ...
end
class FirstApiController < SimpleController
def index
#Code
end
end
class SecondApiController < SimpleController
def index
#Code
end
end
于 2012-12-07T04:27:48.007 回答
1
如果您使用的是 Apache,您可以使用mod_headers关闭响应中的cookie ,这是一个标准的 apache mod。
Header always unset "Set-Cookie"
于 2011-09-18T08:15:00.453 回答