尝试初始化机架会话cookie时没有方法错误

问题描述 投票:0回答:1

我没有使用任何框架,只使用rack gem 来构建Web 应用程序。我正在尝试为成功登录的用户设置 cookie:

use Rack::Session::Cookie

我收到以下错误:

C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/rack-2.2.7/lib/rack/session/cookie.rb:155:in `<class:Cookie>': undefined method `DelegateClass' for Rack::Session::Cookie:Class (NoMethodError)

我已经尝试将机架版本指定为

gem "rack", "~> 3.0"

但什么都没有改变。

如何解决?

ruby cookies rubygems rack
1个回答
1
投票

您最近可能从机架版本 2 更新到机架版本 3。或者您正在遵循机架版本 2 的教程或文档,但同时运行机架 3。

引用自rack的UPGRADE-GUIDE.md

Rack::Session
已移至单独的 gem。

以前,

Rack::Session
rack
宝石的一部分。并非每个应用程序 需要它,它增加了
rack
的安全表面积,所以它是 决定将其提取到自己的 gem
rack-session
中,可以更新 独立。

使用

rack-session
的应用程序需要将该 gem 添加为 依赖性:

gem 'rack-session'
© www.soinside.com 2019 - 2024. All rights reserved.