相关疑难解决方法(0)

在Rails中验证Facebook时出现OAuth2错误

在开发模式下,在localhost/auth/facebook的身份验证回调阶段,我遇到以下错误

OAuth2 ::错误:{"access_token":"XXX","token_type":"bearer","expires_in":123}

这是错误的位置

在此输入图像描述

这是堆栈跟踪

oauth2 (0.9.4) lib/oauth2/client.rb:140:in `get_token'
oauth2 (0.9.4) lib/oauth2/strategy/auth_code.rb:29:in `get_token'
omniauth-oauth2 (1.1.2) lib/omniauth/strategies/oauth2.rb:93:in `build_access_token'
omniauth-facebook (1.6.0) lib/omniauth/strategies/facebook.rb:145:in `block in build_access_token'
omniauth-facebook (1.6.0) lib/omniauth/strategies/facebook.rb:171:in `with_authorization_code!'
omniauth-facebook (1.6.0) lib/omniauth/strategies/facebook.rb:145:in `build_access_token'
omniauth-oauth2 (1.1.2) lib/omniauth/strategies/oauth2.rb:75:in `callback_phase'
omniauth-facebook (1.6.0) lib/omniauth/strategies/facebook.rb:71:in `callback_phase'
omniauth (1.4.2) lib/omniauth/strategy.rb:227:in `callback_call'
omniauth (1.4.2) lib/omniauth/strategy.rb:184:in `call!'
omniauth (1.4.2) lib/omniauth/strategy.rb:164:in `call'
Run Code Online (Sandbox Code Playgroud)

我使用以下宝石版本

  • oauth(0.5.1)
  • oauth2(0.9.4)
  • omn​​iauth(1.4.2)
  • omn​​iauth-facebook(1.6.0)

我怀疑这是一个问题,宝石与Facebook发回的数据不兼容.

有关如何应对这一挑战的任何指示?

更新:为Deepak添加错误的图像

在此输入图像描述

facebook ruby-on-rails oauth-2.0 omniauth omniauth-facebook

5
推荐指数
1
解决办法
680
查看次数

在部署之前检查具有local:path的gems

对于某些Rails应用程序,我希望在部署时有一个安全防范,以检查是否有一些gems配置为在本地路径上查找.

一点上下文可能有助于理解.

当我处于开发模式时,我希望在"本地模式"中拥有一个gem.在我的Gemfile中,它配置如下:gem 'my_gem', '~> 0.9', :path => './path/to/my_gem'.

在制作中,我希望如下:gem 'my_gem', '~> 0.9', :git => 'git@git.example.com:my_gem.git'.

我试图创建一个shell脚本(或函数)来读取Gemfile.lock并在gem处于"本地模式"时退出并显示错误.

如果我忘记切换回正确的模式,我的部署脚本可以使用它来中止.

任何帮助将不胜感激.谢谢

ruby ruby-on-rails bundler

2
推荐指数
1
解决办法
1749
查看次数