本教學導覽說明如何使用影片 API 在粉絲專頁上建立影片。其假設您知道如何使用終端機等指令行工具或 Postman 等應用程式來執行基本的 cURL 要求,並熟悉圖形 API 測試工具的基本操作。
必備項目:
CREATE_CONTENT
工作的粉絲專頁。一般的作法是將 Facebook 登入實作到您的應用程式中,用其取得應用程式用戶的存取權杖。不過在本教學導覽中,您可以使用圖形 API 測試工具,因為其已實作「Facebook 登入」,並可讓您輕鬆為任何應用程式產生權杖。
pages_manage_engagement
和 pages_read_user_content
。
GET /me/accounts
關係連線。這會查詢您的用戶,並傳回您在上一個步驟中授權應用程式存取的任何粉絲專頁。 id
)和粉絲專頁存取權杖(access_token
)。{ "data": [ { "access_token": "EBACf...", //Copy your Page Access Token "category": "Media", "category_list": [ { "id": "163003840417682", "name": "Media" } ], "name": "Metricsaurus", "id": "1755847768034402", //Copy your Page ID "tasks": [ "ANALYZE", "ADVERTISE", "MODERATE", "CREATE_CONTENT", "MANAGE" ] } ], "paging": { "cursors": { "before": "MTc1NTg0Nzc2ODAzNDQwMgZDZD", "after": "MTc1NTg0Nzc2ODAzNDQwMgZDZD" } } }
graph-video.facebook.com
主機上的 POST /page-id/videos
關係連線。如果您使用 Postman,請將查詢參數鍵和值以 form-data 包含在要求內文中。curl -X POST \ "https://graph-video.facebook.com/1755847768034402/videos" \ -F "access_token=EBACf..." \ -F "upload_phase=start" \ -F "file_size=77188035"
1755847768034402
)換成您的粉絲專頁編號,將 access_token
設為先前複製的粉絲專頁存取權杖,並將 file_size
設為影片檔的總大小(單位為位元組)。{ "video_id": "225467151853466", "start_offset": "0", "end_offset": "1048576", "upload_session_id": "225467155186799" }
end_offset
除外。傳送另一個要求至 POST /{page-id}/videos
關係連線,並包含您的 upload_session_id
和第一個影片區塊的名稱。
curl -X POST \ "https://graph-video.facebook.com/1755847768034402/videos" \ -F "access_token=EBACf..." \ -F "upload_phase=transfer" \ -F "start_offset=0" \ -F "upload_session_id=225467155186799" \ -F "video_file_chunk=@xaa"
如果使用 cURL,請在檔案名稱前面加上 @
符號。
如果使用 Postman,請省略 @
符號,將 video_file_chunk
設為檔案(將滑鼠移到該列上方,以觸發下拉式功能表)並手動選擇第一個區塊檔案。
API 會以新的 start_offset
回應。請擷取新的值。
{ "start_offset": "10485760", "end_offset": "15728640" }
start_offset
設為先前回應中傳回的新 start_offset
值,然後將 video_file_chunk
設為序列中下一個影片區塊的名稱。curl -X POST \ "https://graph-video.facebook.com/1755847768034402/videos" \ -F "access_token=EBACf..." \ -F "upload_phase=transfer" \ -F "start_offset=10485760" \ -F "upload_session_id=225467155186799" \ -F "video_file_chunk=@xab"API 會再次以新的
start_offset
值回應,您可以使用該值來上傳序列中的下一個區塊。
{ "start_offset":"15728640", "end_offset":"20971520" }
上傳最後一個區塊之後,傳送最後一個要求至相同的端點並將 upload_phase
設為完成,以結束上傳連線階段。
curl -X POST \ "https://graph-video.facebook.com/1755847768034402/videos" \ -F "access_token=EBACf..." \ -F "upload_phase=finish" \ -F "upload_session_id=225467155186799"
成功時,API 會結束上傳連線階段並以 true
回覆。
{ "success": true }
我們會將您的影片組合並進行編碼。編碼程序可能需要幾分鐘才能完全編碼,視影片檔的總大小而定。