Ruby on rails 禁用单个控制器操作的会话查找

Ruby on rails 禁用单个控制器操作的会话查找,ruby-on-rails,session,Ruby On Rails,Session,我想完全禁用一个控制器操作的会话,因为我希望这个控制器操作(这是一个对数千个值的自动完成操作,所以速度很重要)能够非常快 我尝试使用,但它只是将session变量设置为nil,仍然在数据库中查找用户会话 是否可以完全禁用Rails::SessionStore中间件,但仅针对单个控制器操作或URL 我正在运行rails 3.2.17,答案是:在您自己的机架中间件中处理此端点,并尽早将其插入堆栈中 您可以在config/routes.rb中通过路由到中间件对象来实现这一点: 将“我的自动完成端点”匹

我想完全禁用一个控制器操作的会话,因为我希望这个控制器操作(这是一个对数千个值的自动完成操作,所以速度很重要)能够非常快

我尝试使用,但它只是将
session
变量设置为nil,仍然在数据库中查找用户会话

是否可以完全禁用
Rails::SessionStore
中间件,但仅针对单个控制器操作或URL


我正在运行rails 3.2.17,答案是:在您自己的机架中间件中处理此端点,并尽早将其插入堆栈中

您可以在config/routes.rb中通过路由到中间件对象来实现这一点:

将“我的自动完成端点”匹配到:AutocompleteMiddleware

然后,只需从中间件返回一个响应,而不必升级

您可以将其放在config/application.rb的堆栈中的任意位置,方法是:

config.middleware.insert_在(其他中间件,AutocompleteMiddleware)之前插入

e、 例如,在Rails::SessionStore之前插入它