2017-09-06 1 views
0

Ich versuche den folgenden Code, um ein nicht wiederaufnehmbares Video von meiner Festplatte auf mein Facebook-Profil mit Javascript hochzuladen.Video auf Facebook mit Javascript SDK hochladen

FB.setAccessToken(accessToken); 

    let vid = "file:///D:/videos/vid.mp4"; 
    //also tried with "D://videos/vid.mp4" 

    FB.api(
     "/me/videos ", 
     "POST", 
     { 
      "source": vid, 
      "filename": "vid.mp4" 

     }, 
     function (response) { 
      console.log(JSON.stringify(response, null, 4)); 
     } 
    ); 

Jedes Mal, wenn ich dies ausführe, bekomme ich den folgenden Fehler innerhalb von ein paar Sekunden.

{ 
    "error": { 
     "message": "There was a problem uploading your video file. Please try again.", 
     "type": "OAuthException", 
     "code": 390, 
     "error_subcode": 1363030, 
     "is_transient": true, 
     "error_user_title": "Video Upload Time Out", 
     "error_user_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.", 
     "fbtrace_id": "GwPTrdyQe7z" 
    } 
} 

Ich habe in der Dokumentation nachgesehen, ob es einen Parameter für Timeouts gibt, aber alles umsonst.

Bitte führen Sie mich, was ich hier falsch mache.

Antwort

1

Für fron facebook api Datei-Upload sollten Sie Datei-System

let vid = "file:///D:/videos/vid.mp4"; 
let videoData = require('fs').createReadStream(vid); 
FB.api(
    "/me/videos ", 
    "POST", 
    { 
     "source": videoData, 
    }, 
    function (response) { 
     console.log(JSON.stringify(response, null, 4)); 
    } 
); 

Hoffnung dies helfen wird, verwenden.