8

ユーザーが Facebook でログインしようとすると、(約 2 週間から) コールバック メソッド中に Rails アプリケーションがクラッシュすることがあります。

これはランダムに発生し、この問題を解決する方法を見つけることができません。

エラーとスタックトレースの下:

Errno::ENETUNREACH が発生しました #: ネットワークに到達できません - connect(2)

  • REQUEST_METHOD : GET
  • REQUEST_PATH : /auth/facebook/callback
  • REQUEST_URI : /auth/facebook/callback?code=AQDoUnHaO4ShfZUtCw6TVHAd_oOWUQ7Lar-OunhlFHoWhpTmiliY8hWTEb0CmufEMABpUggIlAe15jx8BOxTmVXmHb3JvVlePEfECpkVhf82UWdoHK8jCYN00KM5RYUkbx6M5SHjusb2xWFeHnE92-nfvbpw2KSARqR5njgJqbV_hkJYb42SiuvNXKOTU6hYY_g

------------------------------- バックトレース:

/home/finetuning/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/net/http.rb:762:in `initialize'
/home/finetuning/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/net/http.rb:762:in `open'
/home/finetuning/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/net/http.rb:762:in `接続のブロック'
/home/finetuning/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/timeout.rb:54:「タイムアウト」
/home/finetuning/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/timeout.rb:99:in `タイムアウト'
/home/finetuning/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/net/http.rb:762:in `connect'
/home/finetuning/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/net/http.rb:755:in `do_start'
/home/finetuning/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/net/http.rb:744:「開始」
/home/finetuning/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/net/http.rb:1284:in `request'
ファラデー (0.7.6) lib/faraday/adapter/net_http.rb:61:in `call'
ファラデー (0.7.6) lib/faraday/request/url_encoded.rb:14:in `call'
ファラデー (0.7.6) lib/faraday/connection.rb:210:in `run_request'
oauth2 (0.5.2) lib/oauth2/client.rb:88:in `request'
oauth2 (0.5.2) lib/oauth2/client.rb:128:`get_token' 内
oauth2 (0.5.2) lib/oauth2/strategy/auth_code.rb:29:`get_token' 内
omn​​iauth-oauth2 (1.0.0) lib/omniauth/strategies/oauth2.rb:77:`build_access_token' 内
omn​​iauth-facebook (1.2.0) lib/omniauth/strategies/facebook.rb:63:in `build_access_token でブロック'
omn​​iauth-facebook (1.2.0) lib/omniauth/strategies/facebook.rb:110:in `with_authorization_code'
omn​​iauth-facebook (1.2.0) lib/omniauth/strategies/facebook.rb:63:in `build_access_token'
omn​​iauth-oauth2 (1.0.0) lib/omniauth/strategies/oauth2.rb:61:in `callback_phase'
4

2 に答える 2

0

アクセス トークンを再要求する必要があるように思えますが、それは推測ではありません。

コールバックが機能する前に、コールバックが機能しなくなった原因がいくつかあります。

  • インターネット接続が一斉に停止する
  • config/routes にルートがありません
  • 悪いジャバスクリプト
  • Facebook アプリでコールバック URL が一致しない
  • 古いバージョンの oauth など..

あなたが持っているものと私が働いているものを再確認して、それが役立つかどうかを確認してください:

http://www.ajostrow.me/thoughts/client-side-facebook-authentication-with-rails

于 2012-10-22T10:59:14.133 に答える