不知道我是怎么偶然发现这个的,但它刚刚出现。我正在使用
Sinatra
和Ruby 3.2.2
。我不确定这个错误是什么。
错误:
ArgumentError at /
key must be 32 bytes
file: encryptor.rb location: key= line: 24
回溯:
/Users/user3/.rbenv/versions/3.2.2/lib/ruby/gems/3.2.0/gems/rack-protection-3.0.6/lib/rack/protection/encryptor.rb in key=
cipher.key = secret[0, cipher.key_len]
/Users/user3/.rbenv/versions/3.2.2/lib/ruby/gems/3.2.0/gems/rack-protection-3.0.6/lib/rack/protection/encryptor.rb in encrypt_message
cipher.key = secret[0, cipher.key_len]
/Users/user3/.rbenv/versions/3.2.2/lib/ruby/gems/3.2.0/gems/rack-protection-3.0.6/lib/rack/protection/encrypted_cookie.rb in write_session
session_data = Rack::Protection::Encryptor.encrypt_message(session_data, @secrets.first)
/Users/user3/.rbenv/versions/3.2.2/lib/ruby/gems/3.2.0/gems/rack-2.2.7/lib/rack/session/abstract/id.rb in commit_session
if not data = write_session(req, session_id, session_data, options)
/Users/user3/.rbenv/versions/3.2.2/lib/ruby/gems/3.2.0/gems/rack-2.2.7/lib/rack/session/abstract/id.rb in context
commit_session(req, res)
/Users/user3/.rbenv/versions/3.2.2/lib/ruby/gems/3.2.0/gems/rack-2.2.7/lib/rack/session/abstract/id.rb in call
context(env)
我该如何解决这个问题?