ruby-on-rails - Apple 推送通知/Ruby OpenSSL 错误

标签 ruby-on-rails ruby openssl apn

当尝试从我的 Rails 应用程序发送推送通知时,我得到了这个。我确保设备 token 和 .pem 文件对命令有效

openssl s_client -connect gateway.sandbox.push.apple.com:2195 -cert aps_development.pem -key aps_development.pem

OpenSSL::SSL::SSLError: SSL_connect returned=1 errno=0 state=SSLv3 read finished A: tlsv1 alert internal error
    from /Library/Ruby/Gems/2.0.0/gems/houston-2.2.3/lib/houston/connection.rb:44:in `connect'
    from /Library/Ruby/Gems/2.0.0/gems/houston-2.2.3/lib/houston/connection.rb:44:in `open'
    from /Library/Ruby/Gems/2.0.0/gems/houston-2.2.3/lib/houston/connection.rb:19:in `open'
    from /Library/Ruby/Gems/2.0.0/gems/houston-2.2.3/lib/houston/client.rb:40:in `push'

这个错误信息非常模糊,无法弄清楚发生了什么。

最佳答案

当你得到这个错误 OpenSSL::SSL::SSLError: SSL_connect returned=1 errno=0 state=SSLv3 read finished A: tlsv1 alert internal error 这意味着你的证书有问题.证书已过期或密码。

只需更新您的 Apple 推送通知证书就可以了。

补充说明:openssl命令不多说,如果遇到需要添加-CApath-CAfile (或将该路径传递给 ENV )可能会产生误导。

希望对您有所帮助。我花了将近一周的时间来解决这个问题。

关于ruby-on-rails - Apple 推送通知/Ruby OpenSSL 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40690498/

相关文章:

ssl - 带有 CA :TRUE and Key Usage not set to sign certificates - is it safe? 的自签名证书

ruby-on-rails - Rails 5 升级停止回调配置问题

ruby-on-rails - Ruby 是按引用传递还是按值传递?

ruby-on-rails - 535-5.7.8 使用 Gmail 的 Rails Mailer 不接受用户名和密码

ruby-on-rails - i18n 与枚举 gem

c++ - 将类方法设置为 OpenSSL 回调

ruby-on-rails - 检查 JSONB 列中的数组是否包含另一个数组中的任何值

ruby-on-rails - Active Admin - 在成员操作中使用 Form DSL(使用 has_many)

ruby-on-rails - Rails4 : Why resque worker is not picking up jobs

使用 OpenSSL 的 PHP 加密/解密对我不起作用