相关疑难解决方法(0)

Devise/Google OAuth 2:找不到.身份验证passthru

我在omn​​iauth-google-oauth2 gem 的自述文件中遵循了教程,当我点击我的root(@ pages#home)上的链接时<%= link_to "Sign up with Google", user_google_oauth2_omniauth_authorize_path %>,我收到错误:

未找到.身份验证passthru.

我已经确认ENV vars在那里.我一直在寻找类似的主题,没有运气.知道我做错了什么吗?

在路线:

Rails.application.routes.draw do
      devise_for :users, controllers: { :omniauth_callbacks => "users/omniauth_callbacks" }
Run Code Online (Sandbox Code Playgroud)

我的omniauth_callbacks_controller位于 /controllers/users/omniauth_callbacks_controller.rb

class Users::OmniauthCallbacksController < Devise::OmniauthCallbacksController
  def google_oauth2
      # You need to implement the method below in your model (e.g. app/models/user.rb)
      @user = User.from_omniauth(request.env["omniauth.auth"])

      if @user.persisted?
        flash[:notice] = I18n.t "devise.omniauth_callbacks.success", :kind => "Google"
        sign_in_and_redirect @user, :event => :authentication
      else
        session["devise.google_data"] = request.env["omniauth.auth"].except(:extra) #Removing extra as it can overflow some session stores …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails oauth devise oauth-2.0 google-oauth

5
推荐指数
2
解决办法
700
查看次数

Devise Oauth推特:OAuth ::未经授权禁止403

我正在尝试使用Devise实现Oauth Twitter.
我在twitter上创建了应用程序
我已将回调网址设置为:http:// localhost:3000
我已将此添加到config\initializers\devise.rb

  config.omniauth :twitter, "key", "key secret"
Run Code Online (Sandbox Code Playgroud)

使用Twitter登录会自动出现在此路线:/ users/sign_up /但点击它时我收到此错误

密钥和密钥是正确的

我也尝试删除和创建新的应用程序.

我无法修复它

非常感谢帮助

在此输入图像描述

这里说它需要设置https.所以我按照这个来设置它.但得到同样的错误

ruby-on-rails omniauth omniauth-twitter

4
推荐指数
2
解决办法
2206
查看次数