【发布时间】:2011-07-18 15:39:40
【问题描述】:
我的应用程序使用 OAuth2 gem (0.1.1) 连接到 Facebook,使用 ActiveMerchant gem (1.12.0) 连接到 PayPal。在当前的 Rails/Ruby 发行版(3.0.5、1.9.2)下,这两个 gem 在使用时都会抛出以下 OpenSSL::SSL::SSLError:
- SSL_connect 返回=1 errno=0 state=SSLv3 读取服务器证书 B:证书验证失败
我做了一些挖掘,发现了两个补丁。第一个涉及将其作为“faraday.rb”(http://bit.ly/hZqNwQ)插入我的初始化程序文件夹。 OAuth2 (Facebook) 方面确实 可与此补丁配合使用。但是,ActiveMerchant (PayPal) 代码仍然会引发相同的 SSL_connect 错误。
我尝试的第二个补丁(未成功)是“always_verify_ssl_certificates”gem (http://bit.ly/dXmuUh)。我做了以下事情:(1) Gemfile 中的 gem 'always_verify_ssl_certificates' (2) 要求 ApplicationController 文件中的'always_verify_ssl_certificates'。但是,OAuth2 (Facebook) 和 ActiveMerchant (PayPal) 都会抛出以下 TypeError:
- 参数错误(NilClass)! (预期的 一种 OpenSSL::SSL::SSLContext)
我的 OAuth2 Facebook 代码 AuthorizeController 和我的 ActiveMerchant PayPal 的链接(PaymentsController 现在在下面的 cmets 中。这是在遵循 Michael Bleigh 的 2010 OAuth2 指南和 2008 Cody Fauser ActiveMerchant 教程之后。任何帮助都很大非常感谢!此时我很困惑。
【问题讨论】:
-
OAuth2 Facebook 代码 AuthorizeController 和 ActiveMerchant PayPal 控制器 PaymentsController
标签: ruby-on-rails oauth paypal facebook-graph-api activemerchant