Расписание обновления Facebook C # SDK - PullRequest
1 голос
/ 06 июня 2011

Я использую Facebook C # SDK (http://facebooksdk.codeplex.com/releases/view/66412) и хотел бы знать, как лучше всего использовать его для обновления моих кэшированных пользовательских данных?

В настоящее время я храню этичасти пользовательской информации:

  • идентификатор пользователя
  • день рождения
  • имя
  • пол
  • страна
  • рис
  • pic_square

Кто-нибудь задумывался об этом или имел опыт использования SDK для обновления своих кэшей? И если да, то как вы разработали свое решение ...

[Кроме того, при ответе, пожалуйста, сообщите мне о графике API-звонков, которые вы сделали и т. Д., Fb так неясны с этими данными]

С уважением Роб

Ответы [ 2 ]

1 голос
/ 20 января 2012

Вот пример реализации с использованием 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
    }

}
0 голосов
/ 09 июня 2011

Используйте функцию подписки на Facebook. Таким образом, Facebook будет пинговать ваш URL с измененными данными каждый раз, когда данные изменяются пользователем. это push-уведомление. Это позволяет получать обновления в реальном времени для графического объекта. https://developers.facebook.com/docs/reference/api/subscription/

Если вы используете веб-формы, внедрите FacebookSubscriptionHttpHandler и FacebookSubscriptionVerifier.

Для mvc используйте FacebookSubscriptionReceivedAttribute и FacebookSubscriptionVerifyAttribute

Я бы настоятельно рекомендовал вам также взглянуть на исходный код Facebook SubscriptionHttpHandler http://facebooksdk.codeplex.com/SourceControl/changeset/view/08cb51f372b5#Source%2fFacebook.Web%2fFacebookSubscriptionsHttpHandler.cs

Содержит xml комментарии о том, как его использовать.

Это трехэтапный процесс.

  1. Получение токена доступа к приложению Facebook.
  2. Подписка на подписки
  3. получение и обработка подписок
...