首页 > 解决方案 > 即使发布成功,Facebook Open Graph Api 身份验证错误

问题描述

我正在创建一个应用程序来管理 Facebook 上的发帖。我可以毫无错误地发布基本的 Facebook 消息,并在我的页面相册中上传本地图像。

问题出在后面。上传我的图片并使用它的 ID 捕获我的图片帖子的来源后,消息已成功发布,但出现身份验证错误。

我正在使用 Ajax 执行此操作并注意到(查看我的代码),我的控制台打印以下顺序:
1.“succes 01”
2.“complete”
3.“succes 02”
而不是
1.“succes 01”
2.“成功02”
3.“完成”

有谁知道我做错了什么?

$.ajax({
url: 'https://graph.facebook.com/me/photos?access_token=' + response.access_token,
type: 'POST',
data: data,
processData: false,
contentType: false,
cache: false,
success:function (data) {

    FB.api( // BEGIN: IMAGE HAS BEEN UPLOADED, NOW LET'S GET THE IMAGE URL TO USE
      '/'+ data.id,
      'GET',
      {"fields":"images"},
      function(response) {
        var getFirstImage = response.images[0].source;
        console.log("succes 02");   

        FB.api( // BEGIN OF FB API TO POST BASIC MESSAGE
          '/'+ val + '/feed',
          'POST',
          {message: message, link: link, source: getFirstImage, access_token: response.access_token},
          function(response) {
            console.log(response);
            $("#" + val).addClass('postsucces');
            $(".feedbackresponse").html("<span class='succesFeedback'>Alright! Every post was a succes</span>");
        }); // END OF FB API TO POST BASIC MESSAGE  


    }); // END: IMAGE HAS BEEN UPLOADED, NOW LET'S GET THE IMAGE URL TO USE

    $('.feedbackresponse').append('<p>Photo was successfully uploaded, object id is: ' + data.id + '</p>');
    console.log("succes 01");
},
error:function (data) {
    $('.feedbackresponse').append('<p>A problem occurred during upload</p>');
},
complete: function () {
    console.log("complete");

}
});

};

标签: javascriptajaxfacebookapigraph

解决方案


推荐阅读