使用 fb_graph Ruby gem 从 Facebook 检索好友位置

2024-04-19

我正在尝试使用 gem 检索用户所有朋友的位置:fb_graph https://github.com/nov/fb_graph。 (版本1.7.2)

我的权限是:发布流、读取好友列表、离线访问、好友位置、用户位置

我已经对用户进行了身份验证并存储了离线访问令牌及其 Facebook ID。

user = User.find_by_email("[email protected] /cdn-cgi/l/email-protection")
facebook_user = FbGraph::User.fetch(user.facebook_identifier, :access_token => user.facebook_access_token)
facebook_user.friends.map(&:location) => [nil, nil...]

当我检查 Facebook 内部的权限时,它说我可以访问朋友的位置:

http://grab.by/a1Qm http://grab.by/a1Qm

我的问题是,当我尝试获取朋友的位置时,它总是返回零。我已经正确设置了权限,并且我知道该位置对于每个人来说都不应该为零。

有人对如何获取朋友位置有任何建议或指示吗?

Thanks!


所以我能够获得我需要的信息。你必须打电话fetch每次通话后,所以

user = User.find_by_email("[email protected] /cdn-cgi/l/email-protection")

facebook_user = FbGraph::User.fetch(user.facebook_identifier, :access_token => user.facebook_access_token)
friends = facebook_user.fetch.friends
friends.each do |friend|
  location = friend.fetch.location
  puts location.try(:name)
end

这让我得到了我想要的数据,但是迭代所有内容并对每条数据进行单独调用的速度相当慢,因此我重构为仅使用直接 FQL 来返回我需要的所有数据。

friend_data = FbGraph::Query.new("SELECT uid, first_name, last_name, pic_square, current_location FROM user WHERE uid in (SELECT uid2 FROM friend WHERE uid1='#{user.facebook_identifier}')").fetch(user.facebook_access_token)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 fb_graph Ruby gem 从 Facebook 检索好友位置 的相关文章

  • 如何在 Rails 测试中测试 params 哈希?

    以下内容会生成错误 未定义的局部变量或方法 params assert equal params recipient id users one id 如何测试参数哈希 另外 你如何测试assert redirect当存在参数时 参数附加到
  • 如何从引擎覆盖 Rails 应用程序路由?

    我有一个 Rails 应用程序 我正在尝试将 Rails 引擎集成到其中 主机应用程序有一些捕获所有路由 magic urls match gt admin rendering show match path edit gt admin r
  • 如何作为应用程序发布到页面?

    所以 我有一个应用程序 Facebook 应用程序实体 并且我有一个页面 我想使用应用程序通过java代码 通过restfb或任何其他建议 发布到页面 看起来我错过了页面授予应用程序发布权限的阶段 不知道该怎么做 谢谢你们 乌里 您只能 作
  • ruby 中的 #encode 和 #force_encoding 有什么区别?

    我真的不明白之间的区别 encode and force encoding在 Ruby 中String班级 我明白那个 kam force encoding UTF 8 将迫使 kam 是UTF 8编码 但是怎么样 encode encod
  • 多重要求和允许强参数rails 4

    在下面的情况下 我尝试使用强参数 我想要求email address password并允许remember me fields 但像下面这样使用它只允许最后一行在方法示例中 在下面的情况下 它只需要params permit rememb
  • (Rails) Assert_Select 的烦人警告

    有谁知道如何让assert select在rake测试期间不输出所有那些讨厌的html警告 你知道 就像这样的东西 ignoring attempt to close body with div opened at byte 1036 li
  • Rails/Nginx 中的超时——最佳实践

    我正在开发一个应该在 Nginx 服务器上运行的 Rails 应用程序 根据输入 应用程序可能需要很长时间来处理请求 或者在出现错误时挂起 因此我想防止进程永远运行 除了确保客户端收到超时信号的 Nginx 配置之外 我想我可能仍然需要确保
  • Rails - 渲染:目标锚标记的操作?

    我希望像这样使用渲染 render action gt page form 我也尝试过这个 render template gt site page form 那也没用 这个特定页面上的表单位于最底部 如果提交时发生任何错误 我不希望用户被
  • rvm gem 安装错误?

    我正在摆弄 ruby gems 和 rvm 它工作得很好 但现在当我尝试安装 gem 时出现错误 gem install Rails错误 同时 执行 gem Errno EACCES 权限被拒绝 Users da rvm gems ruby
  • 获取嵌套参数

    我有一个带有嵌套参数的表单 在下面的示例中 如何获取控制器中的 amount whole 值 Parameters utf8 gt authenticity token gt KCmBI6RLh0LdUsM2r5H1vhNykS1IXecF
  • Rails 4 应用程序...在开发环境中,除非刷新页面,否则 javascript 不会触发

    所以我的第一个rails4应用程序遇到了一个奇怪的问题 除非我重新加载页面 否则我的页面javascript不会触发 对于我的 asset pipeline JS 和 content for JS 来说都是如此 在我的 assets jav
  • 显示即将到来的 Facebook 好友生日

    我仍然得到列表脸书好友以 的形式一月至十二月按升序排列 见下图 但现在我想以以下形式显示 Facebook 好友列表即将到来的生日 Like 最近的热门内容 我使用以下查询来获取好友列表 Log d LOG TAG requestFrien
  • 没有要加载的文件 - ffi_c (LoadError)

    这个问题困扰了我几天 每当我使用 bring to front 方法时 require rubygems require watir browser Watir Browser new browser bring to front 我收到此
  • 为什么我收到“未定义的方法`assert_valid_keys`”?

    知道为什么我会收到此错误 Exception encountered
  • 在 iOS 中使用 FB SDK 是否需要 Facebook 的成功审核?

    现在我需要使用Facebook SDK来自我的 iOS 应用程序中的 Facebook 所以我填写了有关我的应用程序的信息developer facebook com应用程序详细信息 但是 当我用我的设备测试我的应用程序时 我可以发布到 F
  • 如何通过用户的个人资料url获取用户的id?

    现在 当用户在文本框中输入他的个人资料网址时 例如http www facebook com Google http www facebook com Google 表格立即显示Google徽标 这是Google的facebook paeg
  • ruby从1.8.7升级到1.9.2(使用Rails 3.1.1)后本地服务器错误

    我刚刚安装了rvm并使用rvm将ruby从1 8 7升级到1 9 2 我在我的应用程序上运行了捆绑安装 它重新安装了我的 gems 当我在本地运行 Rails 服务器并将浏览器导航到 localhost 3000 时 服务器日志中显示以下错
  • 如何为 ApplicationController 中 after_action 过滤器中的所有操作渲染 json?

    是否可以在 Rails ApplicationController 中创建一个 after filter 方法 该方法在每个操作上运行并呈现为 JSON 我正在构建一个 API 并且希望将控制器中的每个操作的输出呈现为 JSON 客户控制器
  • RoR - Rails 中的大文件上传

    我有一个 Rails Web 应用程序 允许用户上传视频 视频存储在 NFS 安装的目录中 当前的设置适用于较小的文件 但我也需要支持大文件上传 最多 4GB 当我尝试上传 4GB 文件时 它最终会发生 但从用户体验的角度来看很糟糕 上传开
  • 将rails_admin 与rails_api 结合使用

    我最初将此发布为Rails api GitHub 上的问题 https github com sferik rails admin issues 2617 但由于不活跃 我现在将其发布在这里 我正在尝试使用rails admin使用 Rai

随机推荐

  • 如何使用 迭代嵌套列表?

    使用 JSF 2 0 我需要显示一个表 其中每一行都包含一个可打开弹出窗口的链接 我有两个模型 A其中有id and List b 属性和B其中有id and name特性 在我的支持豆中 我有一个List a 财产 在我看来 我正在使用
  • 特征内的常量表达式?

    我有一个特点 看起来像这样 pub trait Buf
  • Node JS 和 Webpack 意外令牌 <

    我已经开始学习了Node JS 这是我的文件 索引 html div h1 Hello h1 h1 h1 div app js var http require http path require path fs require fs co
  • 替换 Pandas 系列给定条件中的值

    这是一个微不足道的问题 我只是无法找到明确的答案 我有一个系列对象 random pd Series np random randint 10 10 我想将所有大于 1 的值替换为 0 我该如何执行此操作 我试过了 Random repla
  • iOS 捏合缩放和两指同时旋转

    这是我的代码 视图加载 UIPinchGestureRecognizer pinch UIPinchGestureRecognizer alloc initWithTarget self action selector pinch self
  • Applescript 从同一目录运行 bash 脚本

    我正在尝试构建一个 AppleScript 来启动我的 shell 脚本 路径结构如下 Users ryan myscript applescript scpt bash sh 我的AppleScript如下 tell applicatio
  • glDrawElements 在 PyOpenGL 中绘制立方体

    我最近开始通过 Python 学习 OpenGL 这要归功于几个教程 尤其是 Nicolas P Rougier 的教程 http www labri fr perso nrougier teaching opengl http www l
  • Inno Setup 选择一个目录来安装预定义集中的文件

    在这种情况下 我需要将文件安装到特定目录 但在不同的计算机上它可能位于不同的文件夹中 所以我需要检查哪个是正确的 例如 我有一个文件 需要将其安装在A文件夹或B文件夹或C文件夹 取决于计算机有A or B or C 所以我需要先检查一下计算
  • TFS 重新成为孙子

    几天来我一直在尝试一切我能想到的方法来让它发挥作用 无基础的合并 重新设置父级 分支然后重新设置父级 我想重新设置一个分支的父级 使其成为其中一个子级的子级 并打破该分支与其父级之间的关系 在下图中 我想将 Cassidy Main 和 B
  • Android 获取日期并插入到文件名

    我有一个非常烦人的问题 我想获取当前日期 时间并将其插入文件名中 但我一生都无法让它工作 我想获取 2011 11 18 12 13 57 的时间 然后将其插入到我的文件名中 文件名 2011 11 18 12 13 57 tar gz 我
  • 如何通过单击超链接打开文件

    我有这张桌子 我想单击链接 文件 无论什么文件 将在新的弹出窗口中打开 这是我的代码
  • 将 SVG 从文件加载到画布并取消分组

    我使用 FabricJS 和函数将 SVG 文件上传到画布 fabric loadSVGFromURL url function objects options group fabric util groupSVGElements obje
  • Linux 上共享串口

    我正在使用 Raspberry Pi 进行一个项目 该项目需要能够写入和读取串行端口 但来自不同的程序 程序 A 需要能够从外围设备 A 正在发送数据的串行端口读取数据 程序B需要向串口写入数据 外设B正在监听串口 供参考 本例中程序A是G
  • 将 matlab 中的 find() 转换为 python

    我正在将代码从 Matlab 转换为 Python Matlab中的代码为 x find sEdgepoints gt 0 sNorm lt lowT sEdgepoints x 0 两个数组的大小相同 我基本上是在创建一个掩码 I rea
  • Xcode 14.0 - PackageIndex.findPackages 失败:featureDisabled 警告

    自从我升级到 Xcode 14 0 后 我收到以下警告 PackageIndex findPackages failed featureDisabled 网络搜索没有得到任何结果 我有一个SPM包 但似乎没有任何问题 有人知道如何摆脱这个警
  • 如何在部署的appengine数据库上的eclipse中调试服务器代码?

    我在 Eclipse 中有一个 Google AppEngine Java 项目 我想在 Eclipse 中调试本地代码 但使用 AppEngine 上部署的数据库 到目前为止 我使用带有用户名 密码的远程 API 旧方式 此方法将被弃用
  • 如何获取批处理文件中的字符串长度?

    似乎没有一种简单的方法可以获取批处理文件中字符串的长度 例如 SET MY STRING abcdefg SET A MY STRING LEN 我如何找到字符串的长度MY STRING 如果字符串长度函数处理字符串中所有可能的字符 包括转
  • Chrome 扩展 + 网页视图

    我正在努力寻找这个问题的明确答案 除 Chrome 操作系统外 所有操作系统均已弃用 Chrome 应用 只能在 Chrome 应用中使用 这意味着我不能或不应该在扩展中使用 如果可能 根据进一步的研究 测试和评论 绝对不能在扩展中使用 只
  • postbuild UIAutomation 脚本未在 jenkins 中运行

    我正在尝试做端到端自动化 for an iOS项目 我的目标是自动化持续集成处理与附加UIAutomation脚本作为构建后操作 因此 从用户在 SVN 中检查他的代码开始 直到我们得到自动化测试结果 一切都将是自动化的 Jenkins安装
  • 使用 fb_graph Ruby gem 从 Facebook 检索好友位置

    我正在尝试使用 gem 检索用户所有朋友的位置 fb graph https github com nov fb graph 版本1 7 2 我的权限是 发布流 读取好友列表 离线访问 好友位置 用户位置 我已经对用户进行了身份验证并存储了