ActiveSupport::MessageVerifier::InvalidSignature:Rails 5 中的 ActiveSupport::MessageVerifier::InvalidSignature 错误

Kir*_*ale 5 ruby ruby-on-rails ruby-on-rails-5

在迁移到 rails 5 之前,它运行良好,但是当我迁移到 rails 5.1.1 时,它给了我这样的错误

ActiveSupport::MessageVerifier::InvalidSignature: ActiveSupport::MessageVerifier::InvalidSignature

我使用了我们在以前版本的 rails 中使用的相同密钥。

前任。

crypt = ActiveSupport::MessageEncryptor.new(Rails.configuration.secret_key_base)
Run Code Online (Sandbox Code Playgroud)

执行以下行后,我收到提到的错误。

@password = crypt.decrypt_and_verify(User.last.encryptedpass)
Run Code Online (Sandbox Code Playgroud)

Dor*_*ian 9

就我而言,我将undefined(字符串)发送到一个video字段(ActiveStorage)


Mar*_*cin 6

就我而言,我使用了附件的名称

has_one_attached :report
Run Code Online (Sandbox Code Playgroud)

在实体中使用(作为表列名称)


小智 2

User.last.encryptedpass (User.last.encrypted_pa​​ssword) 您使用的是设计还是我们的加密方法?

如果消息未使用相同的密钥进行签名或未进行 Base64 编码,则引发 InvalidSignature。

http://api.rubyonrails.org/v5.1/classes/ActiveSupport/MessageVerifier.html