4

Ruby on Rails を使用して Facebook アプリを構築しようとしています。

キャンバス アプリをセットアップし、キャンバスを介してアプリを表示できますが、Ruby facebook API を統合しようとすると、ユーザー データを要求しようとするたびに「パス名を文字列に変換できません」というエラーが発生します。

これまでに 2 つの異なる API (koala と rest-graph) を試しましたが、同じ結果が得られました。

コアラAPIサンプルプロジェクトから作業プロジェクトをダウンロードしました

同じエラーが発生しました。Rails のエラーなのか、それとも rails s localhost:3000 を使用してこれを実行しようとしているのかはわかりません。

以前の ssl エラーがあり、config/initializers の下にこのコードを追加して修正する必要がありました

require 'open-uri'
require 'net/https'

module Net
  class HTTP
    alias_method :original_use_ssl=, :use_ssl=

    def use_ssl=(flag)
      self.ca_file = Rails.root.join('lib/ca-bundle.crt')
      self.verify_mode = OpenSSL::SSL::VERIFY_PEER
      self.original_use_ssl = flag
    end
  end
end
4

1 に答える 1

8

問題はそれです

self.ca_file

パス名を送信している間、文字列を期待します。交換:

Rails.root.join('lib/ca-bundle.crt')

と:

Rails.root.join('lib/ca-bundle.crt').to_s

そしてそれはうまくいくはずです

于 2012-09-29T07:48:26.050 に答える