gpt4 book ai didi

facebook-graph-api - 来自 devise+omniauth-facebook 身份验证的访问 token ,用于在 fb-graph 中使用

转载 作者:行者123 更新时间:2023-12-04 10:27:59 25 4
gpt4 key购买 nike

根据本教程,我在 Rails 3 应用程序中使用了 devise 和 omniauth-facebook 进行 Facebook 身份验证:Adding Facebook auth to Rails 3.1 app ,而且效果很好!

但现在我想在我的应用程序中完全集成 Facebook,我可以通过它访问用户的照片、 friend 等,为此我正在考虑使用 fb_graph。 fb_graph 需要一个 token ,我想知道如何编辑我的用户模型以保存 token 并在 fb_graph 中使用它。任何有关此事的帮助将不胜感激。

这就是我的 User 模型现在的样子:

class User < ActiveRecord::Base

# Include default devise modules. Others available are:
# :token_authenticatable, :encryptable, :confirmable, :lockable, :timeoutable and :omniauthable
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :trackable, :validatable, :omniauthable

# Setup accessible (or protected) attributes for your model
attr_accessible :email, :password, :password_confirmation, :remember_me

has_many :photos
has_many :scrapbooks

def self.find_for_facebook_oauth(access_token, signed_in_resource=nil)
data = access_token.extra.raw_info
if user = User.where(:email => data.email).first
user
else # Create a user with a stub password.
User.create!(:email => data.email, :password => Devise.friendly_token[0,20])
end
end

def self.new_with_session(params, session)
super.tap do |user|
if data = session["devise.facebook_data"] && session["devise.facebook_data"]["extra"]["raw_info"]
user.email = data["email"]
end
end
end
end

最佳答案

你可以这样做:

User.create!(:email => data.email, :password => Devise.friendly_token[0,20], :authentication_token => access_token.credentials.token)

您还需要将 :authentication_token 或您命名的任何内容添加到 attr_accessible

关于facebook-graph-api - 来自 devise+omniauth-facebook 身份验证的访问 token ,用于在 fb-graph 中使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10060738/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com