我有以下代码:
dynamic feed = _facebookClient.Get(string.Format(appURL) + "?fields=message,picture,full_picture,link&limit=" + take);
字段“full_picture”应该提供一张大图,至少可以在facebook图表浏览器上阅读。
然而,结果是130px的图片,这不是很大。该URL与“图片”不同,但大小相同。
有什么建议吗?我一直在努力尝试很多东西,但我无法弄清楚这一点。如果有人有任何我可以阅读的资源,我很乐意自己找到它。
我尝试使用参数?size = large after picture,但这给了我一个错误。
答案 0 :(得分:0)
出于某种原因,这现在正在发挥作用。我认为在开发这个项目时,API必须是错误的。
我取消注释了我以前的代码,但它确实有效。
如果有人有兴趣,我的代码现在看起来像这样:
public class FacebookImpl
{
private static FacebookClient _facebookClient;
public FacebookImpl()
{
const string appId = "my-app-id";
const string appSecret = "my-secret";
_facebookClient = new FacebookClient
{
AppId = appId,
AppSecret = appSecret,
};
dynamic answer = _facebookClient.Get(string.Format("oauth/access_token?grant_type=client_credentials&client_id={0}&client_secret={1}", appId, appSecret));
try
{
_facebookClient.AccessToken = answer.access_token;
}
catch (RuntimeBinderException)
{
// log
}
}
public List<FacebookItem> GetWallFeed(int take, int skip)
{
const string appURL = "/MYFACEBOOKPAGE/posts";
dynamic feed = _facebookClient.Get(string.Format(appURL) + "?fields=message,link,full_picture&limit=" + take, new { limit = take, offset = skip });
var posts = new List<FacebookItem>();
foreach (var item in feed.data)
{
posts.Add(new FacebookItem()
{
Date = "Facebook " + DateTime.Parse(item.created_time).ToString("dd.MM"),
Title = item.message,
Url = item.link,
PhotoSrc = item.full_picture
});
return posts;
}
return posts;
}
}