【问题标题】:Issue loading MY profile picture in AS3在 AS3 中加载我的个人资料图片时出现问题
【发布时间】:2012-02-25 20:49:29
【问题描述】:

我在从 Facebook 上的 Flash 应用加载我的个人资料图片时遇到问题。它在本地运行良好,但是当我上传到 Facebook 时,它只会为我(不是我的朋友)加载这张个人资料图片:http://profile.ak.fbcdn.net/

这就是我正在做的事情:

  1. 获取我和我朋友的 Facebook ID
  2. 为我和我的每个朋友创建一个 URL 字符串:graph.facebook.com/[FACEBOOK ID]/picture?type=large。
  3. 将 URL 放入加载器并加载!
  4. Facebook 返回每张图片的实际地址:即:http://profile.ak.fbcdn.net/hprofile-ak-snc4/370825_524761447_653077984_n.jpg
  5. 将返回的地址扔到另一个加载器中,然后加载最终的实际图像。

完成此操作后,所有朋友的图片都已加载,但由于某种原因,我的个人资料图片总是在帖子开头加载通用图片(profile.ak.fbcdn.net 地址没有任何内容下列的...)。对于任何登录的用户都是这种方式。我已经在几个配置文件上对其进行了测试,并让我的朋友也测试了该应用程序,他们都将通用图片作为“他们的”图片...

附带说明:代码在 2011 年圣诞节假期之前运行良好......当我们在 2012 年回到学校时,它不再运行,而且我们没有更改任何代码。我想知道这是否是 Facebook API 的错误,而不是我们所做的。

【问题讨论】:

  • 在尝试加载您朋友的图片时,您是否在监听任何 IOError 或 SecurityError 事件。这在我看来像是一个安全问题,在调试版本中被绕过了。

标签: facebook flash actionscript-3 profile image


【解决方案1】:

试试这个(在你的应用启动时把它放在某个地方):

Security.loadPolicyFile("http://graph.facebook.com/crossdomain.xml");
Security.loadPolicyFile("http://profile.ak.fbcdn.net/crossdomain.xml");
Security.loadPolicyFile("https://graph.facebook.com/crossdomain.xml");
Security.loadPolicyFile("https://profile.ak.fbcdn.net/crossdomain.xml");
Security.allowDomain("*");
Security.allowInsecureDomain("*");

这也可能与 facebook 更改安全内容有关。如今,每个应用程序都需要在经过认证的 https 服务器上运行...

【讨论】:

  • 效果很好!我只是把它放在我的 Flash 客户端的构造函数中!非常感谢,我已经浪费了很多时间来寻找这个错误....
猜你喜欢
  • 2018-09-05
  • 2012-02-19
  • 2020-10-20
  • 1970-01-01
  • 2021-12-30
  • 1970-01-01
  • 2020-07-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多