ruby-on-rails – Ruby omniauth-oauth2 – 一个Errno :: ENETUNREACH – 网络无法访问 – connect(2)

用户尝试使用facebook登录时,我的Rails应用程序有时(大约2周)在回调方法期间崩溃.

这是随机发生的,我找不到解决这个问题的方法.

错误下面和一段堆栈跟踪:

Errno :: ENETUNREACH发生在#:
网络无法访问 – 连接(2)

> REQUEST_METHOD:GET
> REQUEST_PATH:/ auth / facebook / callback
> REQUEST_URI:?/ AUTH /实/回调代码= AQDoUnHaO4ShfZUtCw6TVHAd_oOWUQ7Lar-OunhlFHoWhpTmiliY8hWTEb0CmufEMABpUggIlAe15jx8BoxTmVXmHb3JvVlePEfECpkVhf82UWdoHK8jCYN00KM5RYUkbx6M5SHjusb2xWFeHnE92-nfvbpw2KSARqR5njgJqbV_hkJYb42SiuvNXKOTU6hYY_g

——————————- Backtrace:

/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 `block in connect'
/home/finetuning/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/timeout.rb:54:in `timeout'
/home/finetuning/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/timeout.rb:99:in `timeout'
/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:in `start'
/home/finetuning/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/net/http.rb:1284:in `request'
faraday (0.7.6) lib/faraday/adapter/net_http.rb:61:in `call'
faraday (0.7.6) lib/faraday/request/url_encoded.rb:14:in `call'
faraday (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:in `get_token'
oauth2 (0.5.2) lib/oauth2/strategy/auth_code.rb:29:in `get_token'
omniauth-oauth2 (1.0.0) lib/omniauth/strategies/oauth2.rb:77:in `build_access_token'
omniauth-facebook (1.2.0) lib/omniauth/strategies/facebook.rb:63:in `block in build_access_token'
omniauth-facebook (1.2.0) lib/omniauth/strategies/facebook.rb:110:in `with_authorization_code'
omniauth-facebook (1.2.0) lib/omniauth/strategies/facebook.rb:63:in `build_access_token'
omniauth-oauth2 (1.0.0) lib/omniauth/strategies/oauth2.rb:61:in `callback_phase'

解决方法

这听起来像是需要向我重新请求的访问令牌,但这是一个不可知的猜测.

在我开始工作之前,有很多事情阻止了回调为我工作:

>互联网连接一起停止
>配置/路由中没有路由
>糟糕的javascript
>回调网址在Facebook应用上不匹配
>过时版的oauth ..等..

随意仔细检查一下我工作的内容,看看是否有帮助:

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

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...