将通知标记为在Facebook图形API中读取

时间:2014-06-03 19:02:24

标签: angularjs facebook-graph-api notifications http-request

我愿意使用facebook图表api将用户的通知标记为已读,但我现在开始怀疑这是否可行。以下是我现在正在尝试的内容,这是我在stackoverflow上的this问题中找到的解决方案。

$http({method: 'POST', url: 'https://graph.facebook.com/' + item.id + '?unread=0'}).
            success(function(data, status, headers, config) {
              // this callback will be called asynchronously
              // when the response is available
              deferred.resolve(status);
            }).
            error(function(data, status, headers, config) {
              // called asynchronously if an error occurs
              // or server returns response with an error status.
            });

当然,item.id是通知的ID。

我正在使用角度来处理我的http请求,但我也不介意其他方法,只有角度对我来说最简单。我也期待听到有关如何将通知标记为已读的任何想法,我不喜欢任何方式,只是希望它以某种方式发生。

1 个答案:

答案 0 :(得分:0)

这是我刚才发现的解决方案,忘了发帖。 (注意我正在使用angular.js,如果你不是用q或rsvp库做出承诺,或者不这样做)

function (notificationId) {

    var deferred = $q.defer();

    FB.api(
        'https://graph.facebook.com/' + notificationId, 'post', {
        unread: 0
    },

    function (response) {
        if (!response || response.error) {
            deferred.reject(response.error);
        } else {
            deferred.resolve(response);
        }
    });
    return deferred.promise;
}