Получение ошибки SSL с помощью Koala с Devise & OmniAuth в приложении Rails 3

Я создаю приложение Rails 3 с помощью Devise / OmniAuth и Koala и получаю следующую ошибку SSL:

OpenSSL::SSL::SSLError in Users/omniauth callbacksController#facebook
SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed

Код, вызывающий эту ошибку:

@graph = Koala::Facebook::GraphAPI.new(@token)
@friends = @graph.get_connections("me", "friends")

Я использую Devise с OmniAuth для аутентификации, которая работает. Затем я беру возвращенный токен facebook и пытаюсь использовать его с Koala, как показано выше. Вот что вызывает эту ошибку.

Вероятно, стоит отметить, что изначально я получал ту же ошибку с Devise & OmniAuth. Есть несколько тем об этой ошибке, и я смог ее решить, настроив свой config / initialisers / devise.rb с помощью,

config.omniauth :facebook, APPID, APPKEY, {:client_options => {:ssl => {:ca_file =>  "/opt/local/share/curl/curl-ca-bundle.crt"}}} 

Я предполагаю, что мне нужно предоставить аналогичную конфигурацию для Koala, чтобы он знал где получить локальный файл ca_file. Однако я не могу найти никаких указаний, как это сделать, в документации. Есть идеи, как это сделать или как избежать ошибки в целом?

Моя среда разработки - OSX.

6
задан vansan 25 May 2011 в 15:52
поделиться