我正在使用Facebook C#SDK(http://facebooksdk.codeplex.com/releases/view/66412),并想知道使用它来保持我的缓存用户数据的最佳方法是什么日期?
目前我正在存储这些用户信息:
有没有人对此使用过任何想法或有使用SDK来保持其缓存最新的经验?如果是这样,你是如何构建你的解决方案的......
[另外,在回复时请通知我你所做的图表api调用等,fb对这些数据是如此模糊]
此致 罗布
答案 0 :(得分:1)
这是使用MVC3的示例实现:
public class SubscriptionController : Controller
{
private const string SubscriptionVerificationToken = "E5FB84E0-F425-445A-86C8-9FC598E79B1E";
private const string CallbackUrl = "http://mysite.com/subscription/verify";
public void Index()
{
FacebookClient fb = new FacebookClient(FacebookApplication.Current);
dynamic result = fb.Post(
string.Format("/{0}/subscriptions", FacebookApplication.Current.AppId), new Dictionary<string, object>
{
{ "object","user"},
{ "fields","friends" },
{"callback_url", CallbackUrl },
{ "verify_token", SubscriptionVerificationToken }
});
}
[HttpGet]
[FacebookSubscriptionVerify(SubscriptionVerificationToken)]
public void Verify(FacebookClient fb)
{
FacebookSubscriptionVerifiedResult verifiedResult = new FacebookSubscriptionVerifiedResult();
verifiedResult.ExecuteResult(ControllerContext);
}
[HttpPost]
[FacebookSubscriptionReceived]
[ActionName("Verify")]
public void Receive()
{
//handle response
}
}
答案 1 :(得分:0)
使用facebook订阅功能。这样,每次用户更改数据时,facebook都会使用更改的数据ping您的URL。这是一个基于推送的通知。它允许您获取图形对象的实时更新。 https://developers.facebook.com/docs/reference/api/subscription/
如果您使用的是网络表单,请使用FacebookSubscriptionsHttpHandler和FacebookSubscriptionVerifier。
对于mvc使用FacebookSubscriptionReceivedAttribute和FacebookSubscriptionVerifyAttribute
我强烈建议你也看看FacebookSubscriptionsHttpHandler源代码http://facebooksdk.codeplex.com/SourceControl/changeset/view/08cb51f372b5#Source%2fFacebook.Web%2fFacebookSubscriptionsHttpHandler.cs
它包含有关如何使用它的xml注释。
这是一个3步骤。