facebook视频上传错误1363030 [英] facebook video upload error 1363030

查看:725
本文介绍了facebook视频上传错误1363030的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我尝试上传时,收到以下错误:

When I try to upload, I get the following error:


Error code:1363030,
msg: Your video upload timed out before it could be completed. This is probably because of a slow network connection or because the video you're trying to upload is too large. Please try again.

我正在使用Facebook Javascript SDK 2.5。
我错过了什么或错了什么?

I'm using Facebook Javascript SDK 2.5. What am I missing or wrong?

<script>
      var files;
      var fileData = '';  
      function handleFileSelect(evt) {
        files = evt.target.files; // FileList object
        var input = evt.target;
        var reader = new FileReader();
        reader.onload = function (e) {
          fileData = e.target.result;
        };
        reader.readAsDataURL(input.files[0]);
        // files is a FileList of File objects. List some properties.
        var output = [];
        for (var i = 0, f; f = files[i]; i++) {
          output.push('<li class="list-group-item">', escape(f.name), '(', f.type || 'n/a', ') - ',
                      f.size, ' bytes','</li>');
        }
        document.getElementById('list').innerHTML = output.join('');
      }
      document.getElementById('files').addEventListener('change', handleFileSelect, false);

      $(document).ready(function()
      {

        $("#upload").click(function(){
          var token = $('#token').val();
          FB.api(
            "/me/videos",
            "POST",
            {    
                "access_token" : token,
                "title" : 'test',
                "source": fileData
            },
            function (response) {
              if (response && !response.error) {
                /* handle the result */
              }
            }
          );
        })

    });
</script>

这里是样本网站

推荐答案

在Node.js中点击这个。如果您未指定附加文件的内容类型和文件名(即,如果您将其作为内联字段值传递,而不是作为附加文件),则会出现此Facebook错误。

Just hit this in Node.js. This Facebook error occurs if you don't specify the content type and file name of the attached file (i.e. if you pass it as an inline field value, not as an attached file).

不确定如何通过 FB.api 进行,但使用 request-promise 模块(和ES7)通过Babel的async函数)它看起来像这样:

Not sure how to do it via FB.api, but with request-promise module (and ES7 async functions via Babel) it looks like this:

import request from 'request-promise'

async function uploadVideoToFacebook (buf) {
  let url = 'https://graph-video.facebook.com/v2.5/' + pageId + '/videos?access_token=' + pageToken

  let formData = {
    title: 'Video title',
    description: 'Timeline message...',
    source: {
      value: buf,
      options: {
        filename: 'video.mp4',
        contentType: 'video/mp4'
      }
    }
  }

  return await request({ method: 'POST', url, formData })
}

和与 XMLHttpRequest 在客户端你会做类似的事情:

and with XMLHttpRequest on the client-side you would do something like:

var blob = new Blob(videoDataHere, { type: 'video/mp4' })

var formData = new FormData();
formData.append('source', blob);
formData.append('message', 'Spartan Overlay');

var ajax = new XMLHttpRequest()
ajax.onreadystatechange = ...
ajax.open('POST', 'https://graph.facebook.com/' + userId + '/videos?access_token=' + accessToken, true)
ajax.send(formData)

这篇关于facebook视频上传错误1363030的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆