0
我在我的應用程序中使用omniauth-facebook,我不太確定,但我想我遇到了路由問題,因爲它沒有達到我重定向的方法。在omniauth的facebook回調問題
MyApp::Application.routes.draw do
match '/auth/facebook/callback' => 'user#create'
resources :users
require 'omniauth'
class UserController < ApplicationController
def create
if User.exists?(:condition => ["email=?",auth_hash["info"]["email"]])
self.current_user = User.find(:all,:condition => ["email=?",auth_hash["info"]["email"]])
else
self.current_user = User.new(:email => auth_hash["info"]["email"])
redirect_to 'deals#generate_ticket'
end
end
def auth_hash
request.env['omniauth.auth']
end
Rails.application.config.middleware.use OmniAuth::Builder do
provider :facebook, 'XXXXXXXXXXXXXXXXX', 'XXXXXXXXXXXXXXXXX',
:scope => 'email'
end
也許我錯過了路線中的某些東西,或許我沒有正確安裝寶石。我將竭誠爲你提供幫助。謝謝!
感謝您的回答,但我已經嘗試過了,而且我仍處於相同的情況。當它啓動callbitack階段時,會發生錯誤:TypeError 無法將路徑名轉換爲字符串。 我不知道可能是什麼原因的錯誤,任何想法? – user1714597