Facebook公共相册

Facebook公共相册,facebook,facebook-c#-sdk,photos,Facebook,Facebook C# Sdk,Photos,我正在尝试开发一个桌面上带有C#的应用程序,其中一个用户正在通过电子邮件或姓名搜索一个人。然后,它将列出用户信息和公共相册或图片。然后,该程序的用户将查看照片,如果可以找到合适的搜索人将添加朋友 我的问题是我不能列出和显示公共相册。我尝试使用FQL和graph API,但两者都返回空数据。我为此编写的代码: ArrayList pictureLink; public void userPhotos(string userID) { var fb2 = n

我正在尝试开发一个桌面上带有C#的应用程序,其中一个用户正在通过电子邮件或姓名搜索一个人。然后,它将列出用户信息和公共相册或图片。然后,该程序的用户将查看照片,如果可以找到合适的搜索人将添加朋友

我的问题是我不能列出和显示公共相册。我尝试使用FQL和graph API,但两者都返回空数据。我为此编写的代码:

ArrayList  pictureLink;
public void userPhotos(string userID)
        {
            var fb2 = new FacebookClient(_accessToken);

//result1 and result2 aren't using in code only for looking for with breakpoint
            dynamic result1 = fb2.Get("fql", new { q = "SELECT aid,cover_pid FROM album WHERE owner=" + kisiID });
            dynamic result2 = fb2.Get("fql", new { q = "SELECT pid,aid FROM photo WHERE owner=" + kisiID });

            ArrayList imageSize; //for gettig highest pixell of picture
            pictureLink = new ArrayList();
            var fb = new FacebookClient(_accessToken);

            //dynamic albums = fb.Get("me/albums"); // THİS code is rigth runnig
        dynamic albums = fb.Get(userID + "/albums");

            foreach (dynamic albumInfo in albums.data)
            {
                //Get the Pictures inside the album this gives JASON objects list that has photo attributes 
                // described here http://developers.facebook.com/docs/reference/api/photo/
                dynamic albumsPhotos = fb.Get(albumInfo.id + "/photos");
                foreach (dynamic rs in albumsPhotos.data)
                {
                    imageSize= new ArrayList();
                    foreach (dynamic rsa in rs.images)
                    {
                        imageSize.Add(rsa.height);
                    }
                    int highestImage = Convert.ToInt32(imageSize[0]);
                    foreach (dynamic rsa in rs.images)
                    {
                        if (rsa.height == highestImage )
                        {
                            string link= rsa.source;
                            pictureLink.Add(link);
                        }
                    }
                }  
        }              
}
要阅读相册,您需要:

  • 任何有效的访问令牌(如果它是公共的并且属于页面)
  • 如果该用户属于某个用户,则该用户具有“照片”权限
  • 如果它属于用户的朋友,则为friend_photos权限
资料来源:

您需要的是下面的语句,它不在列表中

  • 任何有效的访问令牌(如果它是公共的并且属于用户)
这意味着API根本不允许您访问公共相册。我也一样