首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Facebook相册和照片无法使用所有需要的权限访问(GRAPH API)

Facebook相册和照片无法使用所有需要的权限访问(GRAPH API)
EN

Stack Overflow用户
提问于 2011-08-21 00:15:32
回答 2查看 6.2K关注 0票数 3

在我的android应用程序中,我下载了用户指定朋友的相册列表。

我已经获得了follows:friends_about_me,friends_photo_video_tags,friends_photos,user_photos的权限。

对于一些朋友来说,它工作得很好,我可以下载完整的列表和所有的照片。但对于某些情况,它会返回空数组。这是一个朋友隐私政策的案例,还是这是一个FB错误?

如果我尝试通过FB页面或FB android应用程序查看这个朋友的相册,它工作正常。

编辑:我确实从FB页面的URL中获取了用户相册id,并将其粘贴到GRAPH API explorer中,它向我返回了false。

问题是:如何获取相册列表和相册照片?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-08-27 02:43:38

隐私设置

(目前)在Account > Privacy settings > Apps and Websites "Edit your settings"下,有一种方法可以让用户设置你的应用程序可以通过他们的朋友访问哪些信息,而不管他们的朋友授予该应用程序什么权限。

如果你试图查看相册的人没有勾选“我的照片”,那么他们必须直接授予应用程序权限(如下所述)。默认情况下,它处于选中状态,并且您的应用程序可以访问用户的照片。如果未选中此框,则如果没有添加您的应用程序并为您提供访问权限,则您的应用程序无法获取他们的照片。

随着changes在facebook的隐私设置中的推出,这些设置很可能会被移动,但希望这些功能仍然存在。

facebook更新 8/30 -我的帐户刚刚启用了上面提到的更改。对话框是相同的,只是使用了不同的标签:Account > Privacy Settings > Apps and Websites > How people bring your info to apps they use "Edit settings"。一些文本已更新,一些选项略有不同,但其他设置是相同的。

测试

如下配置两个帐号:

账号1:

"restricted"

  • Photo相册有两个好友组,其中一个叫做
  1. (除了‘头像’),这样‘仅限好友;除了受限组’才能看到他们。个人资料图片仅设置为好友。
  2. “我的照片”未签入“可通过friends"
  3. Very自由权限访问应用程序(friends_about_me, friends_photo_video_tags, friends_photos, user_photos等)的信息”

账号2:

帐户为1的

  1. 好友
  2. 被授予与app

相同的权限

通过在帐户1上切换隐私控制(选中/取消选中有问题的复选框,授予/撤销帐户1上的应用程序的权限,以及将帐户2添加/删除到“受限制”组),并尝试访问该帐户的相册,您将发现帐户1中的My Photos复选框:

  • Checked
    • 帐户2使用的任何具有friends_photos权限的应用程序都可以查看帐户2

可见的任何照片

帐户%1的朋友使用的

  • 未选中的
    • 应用程序无法访问任何照片,unless...
    • UNLESS帐户%1已添加您的应用程序并授予了user_photos权限。在这种情况下,应用程序可以访问帐户2.

可见的任何相册

因此,帐户2可以访问帐户1的相册(/<userid>/albums)的唯一方法是,当帐户2不在“受限制”组中,并且帐户1启用了具有user_photos权限的应用程序时,“我的照片”框未被选中。当帐户2被限制时,它可以看到的唯一相册是(正如预期的)“个人资料图片”相册。当帐户1在未授予user_photos权限的情况下删除或启用应用程序时,/albums连接将返回一个空数组。

因此,虽然得到一个空数组看起来像是一个错误,但实际上这是完全确定的和预期的行为。最重要的是,从用户隐私的角度来看,Facebook让用户控制这个设置是件好事。

那么你是怎么得到他们的照片的呢?

你不需要。或者,你不应该,无论如何。如果他们花时间禁止通过他们的朋友访问他们的照片,你应该尊重他们的隐私。

也就是说,从技术上讲,仍然可以作为他们的朋友登录facebook.com,查看他们与朋友分享的照片,但不能与朋友的应用程序分享。从理论上讲,你可以编写一个网络爬虫,它会自动执行这样的任务,尽管它是针对facebook terms of service的,这样做你将是一个坏人:

Facebook 3.2未经我们的许可,您不得使用自动化手段(如收集机器人、机器人、蜘蛛或刮刀)收集用户的内容或信息,或以其他方式访问

票数 10
EN

Stack Overflow用户

发布于 2011-08-26 23:20:19

你应该运行一个测试,创建2个facebook测试配置文件(或使用朋友帐户),将一个设置为私有,另一个设置为公开,然后查看结果

我敢打赌这是隐私设置

如果无论隐私设置如何,它都能正常工作,那么您可能会同时处理多个请求,并因此而被删除。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7133014

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档