从Facebook获取照片和相册

时间:2012-09-24 03:15:45

标签: facebook facebook-graph-api facebook-javascript-sdk facebook-c#-sdk

我有一个客户希望自己的Facebook帐户中的相册,图片自动显示在她的网站上,因此她无需在两个地方管理它们。

我花了几个小时进行研究,但没有找到任何可以解释这种情况的东西。我在facebook开发人员文档中阅读了一堆有关身份验证和访问令牌的内容,但仍然没有清晰的情况。

我确切知道的是,我客户网站的最终用户不必拥有Facebook帐户。

2 个答案:

答案 0 :(得分:2)

首先,您需要在Facebook上设置应用程序,并指定您将在网站上使用它。您可以在http://developers.facebook.com/apps/

执行此操作

因为你提到了c#(这很难改变),这是在JS中做到这一点的最好方法:

<div id="fb-root"></div>
<script language="javascript">
var facebookappid = '##FACEBOOK_APP_ID##';
//this is the site owners facebook id. note she must make all her galleries and pictures public
var userid = '8979567465474';

//load the facebook SDK
window.fbAsyncInit = function() {
    FB.init({appId: facebookappid, status: true, cookie: true,
             xfbml: true});
  };
  (function() {
    var e = document.createElement('script'); e.async = true;
    e.src = document.location.protocol +
      '//connect.facebook.net/en_US/all.js';
    document.getElementById('fb-root').appendChild(e);
  }());

//get albums
var albums;
FB.api('/'+userid+'/albums/', 'get', function(response){
    if (!response || response.error) {
        albums = response.error;
    } else {
        albums = response;
    }
}); 
</script>

从那里你可以获取你的专辑变量,这将为你提供一系列专辑ID。 循环浏览每张专辑,并使用相同的代码FB.api获取'/'+ userid +'/'+ albumid +'/ photos'

您可以使用Graph API资源管理器查看从每个阵列返回的所有信息 https://developers.facebook.com/tools/explorer?method=GET

以下是我的个人资料图片相册返回的数据示例: https://developers.facebook.com/tools/explorer?method=GET&path=159665340734292%2Fphotos%2F

希望这有帮助!如果您需要进一步解释,请告诉我:)

答案 1 :(得分:1)

如果你有一个基于Wordpress的网站,那么你必须按照以下步骤使其成为可能:

  1. 我们知道Facebook Photo Fetcher插件可用于Wordpress,首先安装并激活它。
  2. 现在你必须在设置&gt;&gt;中为你的Facebook Photo Fetcher做一些设置。 FB Photo Fetcher。
  3. 成功完成设置后,您的插件已成功连接到您的ID Facebook帐户。
  4. 现在,您可以通过搜索相册并获取ID,将您的Facebook相册插入Wordpress中的帖子或页面。
  5. 使用Html编辑器在Wordpress中创建一个新页面或帖子并插入以下代码:,使用您真实的Facebook相册ID更改234567890123456789。
  6. 现在保存并检查您的页面。希望你能在你的Wordpress网站上获得你的专辑。