gpt4 book ai didi

ruby-on-rails - 如何使用 Koala gem 获取 Facebook 用户的电子邮件

转载 作者:数据小太阳 更新时间:2023-10-29 08:04:26 26 4
gpt4 key购买 nike

我正在尝试使用 FB Open Graph 让我的应用程序更新用户的属性。我安装了 Koala 并使用 facebook-omniauth 进行身份验证。简单地说,我想查询我的数据库以查找与他的 fb id 匹配的用户,如果该用户不存在,那么我想用来自 facebook API 的数据更新用户模型的属性。我还使用 mongoid 来反对我的数据库的事件记录。

在我的用户模型中我有这个方法。

定义 Facebook @facebook ||= Koala::Facebook::API.new(oauth_token)结束

在我的 Controller 中,我的一个方法中包含这些代码行。

@user = User.where(facebook_uid: params[:auth_id])

if @user.empty?
User.create(
first_name: User.facebook.get_object("name"),
last_name: User.facebook.get_object("email"),
facebook_uid: params[:auth_id],
facebook_oauth_token: params[:auth_token])
else
User.update_attributes(
facebook_oauth_token: params[:auth_token]
end

当我在控制台中玩游戏时,User.facebook.get_object("email") 不会返回用户的电子邮件。有人知道怎么做吗?

谢谢!

最佳答案

这应该有效:

graph = Koala::Facebook::API.new(oauth_access_token)
profile = graph.get_object('me', fields:'email')

现在 profile['email'] 将为您获取用户的电子邮件。

关于ruby-on-rails - 如何使用 Koala gem 获取 Facebook 用户的电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21002272/

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