ArgumentError(无法解析PKCS7:标头太长)

时间:2018-12-14 03:15:19

标签: ruby-on-rails ruby ruby-on-rails-5 sinatra

我正在尝试将使用Sinatra和WEBrick的Ruby项目转换为Rails和Passenger。

Sinatra中的此代码可以正常工作:

world.mount_proc("/profile") { |req, res|
  p7sign = OpenSSL::PKCS7.new(req.body)
}

我已经将以下代码转换为在Rails控制器中运行:

def profile
  p7sign = OpenSSL::PKCS7.new(request.body)
end

在Rails中处理请求时显示以下错误:

F, [2018-12-14T03:00:01.418176 #30473] FATAL -- : [4a785370-6bbe-4d34-8731-e4fd406f2719] ArgumentError (Could not parse the PKCS7: header too long):
F, [2018-12-14T03:00:01.418255 #30473] FATAL -- : [4a785370-6bbe-4d34-8731-e4fd406f2719]   
F, [2018-12-14T03:00:01.418354 #30473] FATAL -- : [4a785370-6bbe-4d34-8731-e4fd406f2719] app/controllers/mdm_controller.rb:224:in `initialize'

我为两个应用程序都使用了相同的Ruby版本,即Ruby 2.5.3p105。

两个版本的OpenSSL的OpenSSL版本也相同(默认值:2.1.2)。

为什么这在Sinatra中起作用而在Rails中不起作用?

0 个答案:

没有答案