2015-09-29 153 views
0

在工作中,我们制作了一个网站,我们可以将视频上传到Facebook。我们遇到了一个问题;当视频大于100MB时,会出现以下错误:“需要访问令牌来请求此资源”。Facebook Graph API上传视频

访问令牌是有效的,我们在上传100MB以下的视频时没有问题,所以我们有点困惑为什么会发生这种情况。

我正在使用JavaScript/JQuery的Ajax发布请求上传视频。

var formData = new FormData(); 
    formData.append("access_token", token); 
    formData.append("id", "{page-id}"); 
    formData.append("title", $("#video_title").val()); 
    formData.append("description", $("#video_title").val()); 
    formData.append("source", $('#upload_btn').get(0).files[0]); 
    var url = "https://graph.facebook.com/v2.4/{page-id}/videos"; 
    $.ajax({ 
     url: url, 
     type: 'POST', 
     data: formData, 
     dataType: 'json', 
     mimeType: "multipart/form-data", 
     cache: false, 
     contentType: false, 
     processData: false, 
     success: function (json) { 
     }, 
     error: function(xhr, status, error) { 
      alert(JSON.parse(xhr.responseText).error.message); 
     } 
    }); 

任何想法,为什么我们得到这个错误信息,或者我们应该上传不同的方式?

+0

多久上传采取?也许您的访问令牌在此期间过期...? – CBroe

+0

上传需要几分钟的时间。但我们使用永久访问令牌,所以这不是问题, –

+0

根据文档(https://developers.facebook.com/docs/graph-api/video-uploads),不可恢复的上传应该罚款文件最大可达1 GB。还有一种可恢复上传的机制,可以上传大块视频 - 但实施起来会更复杂。我没有看到明显的原因,为什么上传需要几分钟的时间并且带有永久性访问令牌会导致此错误失败......我建议您使用Facebook向https://developers.facebook.com/bugs提交错误报告 – CBroe

回答

2

使用的API域不正确,视频上传你应该指出这个领域:https://graph-video.facebook.com/...