การเผยแพร่

API วิดีโอช่วยให้คุณสามารถเผยแพร่วิดีโอและคลิป Reels ในเพจ Facebook ได้

ข้อกำหนด

หากต้องการเผยแพร่วิดีโอบนเพจ คุณจะต้องมีสิ่งต่อไปนี้

  • โทเค็นการเข้าถึงเพจที่ร้องขอโดยบุคคลที่สามารถดำเนินงาน CREATE_CONTENT บนเพจได้
  • บุคคลที่ขอโทเค็นจะต้องให้สิทธิ์แอพของคุณเข้าถึงสิทธิ์การอนุญาตต่อไปนี้ผ่านการเข้าสู่ระบบ Facebook
  • แฮนเดิลของวิดีโอ

เผยแพร่วิดีโอ

หากต้องการเผยแพร่วิดีโอ ให้ส่งคำขอ POST ไปยังตำแหน่งข้อมูล /<PAGE_ID>/videos ด้วย

curl -X POST \
  "https://graph-video.facebook.com/v21.0/<PAGE_ID>/videos" \
  -F "access_token=<PAGE_ACCESS_TOKEN>" \
  -F "title=<VIDEO_TITLE>" \
  -F "description=<VIDEO_DESCRIPTION>" \ 
  -F "fbuploader_video_file_chunk=<UPLOADED_FILE_HANDLE>"

เมื่อดำเนินการสำเร็จ แอพของคุณจะได้รับการตอบกลับแบบ JSON พร้อม ID ของวิดีโอ

{
  "id":"<VIDEO_ID>"
}

อัพโหลดไฟล์วิดีโอ

อัพโหลดไฟล์

API การอัพโหลดแบบดำเนินการต่อได้ช่วยให้คุณสามารถอัพโหลดไฟล์ขนาดใหญ่ไปยังกราฟสังคมของ Meta และดำเนินเซสชั่นการอัพโหลดต่อจากที่ค้างไว้ได้โดยไม่ต้องเริ่มใหม่ทั้งหมด เมื่ออัพโหลดไฟล์แล้ว คุณสามารถเผยแพร่ไฟล์ได้

ข้อมูลอ้างอิงสำหรับตำแหน่งข้อมูลต่างๆ ที่รองรับแฮนเดิลไฟล์ที่อัพโหลดจะระบุว่าตำแหน่งข้อมูลรองรับแฮนเดิลที่ API การอัพโหลดแบบดำเนินการต่อได้ส่งคืนมาหรือไม่

ก่อนเริ่มต้น

คู่มือนี้จะถือว่าคุณได้อ่านคู่มือภาพรวม API กราฟและคู่มือการพัฒนา Meta และดำเนินการที่จำเป็นสำหรับการพัฒนากับ Meta มาแล้ว

คุณจำเป็นต้องมีสิ่งต่อไปนี้

  • ID แอพ Meta
  • ไฟล์รูปแบบใดรูปแบบหนึ่งต่อไปนี้
    • pdf
    • jpeg
    • jpg
    • png
  • โทเค็นการเข้าถึงผู้ใช้

ขั้นตอนที่ 1: เริ่มเซสชั่นการอัพโหลด

เพื่อเริ่มเซสชั่นการอัพโหลด ให้ส่งคำขอ POST ไปยังตำแหน่งข้อมูล /<APP_ID>/uploads ซึ่ง ID ของแอพ Meta ของคุณเป็น <APP_ID> โดยระบุพารามิเตอร์ที่จำเป็นดังต่อไปนี้

  • file_name - ชื่อไฟล์ของคุณ
  • file_length - ขนาดไฟล์ โดยมีหน่วยเป็นไบต์
  • file_type - ประเภท MIME ของไฟล์ ค่าที่ถูกต้อง ได้แก่ application/pdf, image/jpeg, image/jpg, image/png และ video/mp4

รูปแบบคำสั่งของคำขอ

จัดรูปแบบเพื่อให้อ่านได้ง่าย

curl -i -X POST "https://graph.facebook.com/v21.0/<APP_ID>/uploads
  ?file_name=<FILE_NAME>
  &file_length=<FILE_LENGTH>
  &file_type=<FILE_TYPE>
  &access_token=<USER_ACCESS_TOKEN>"

เมื่อดำเนินการสำเร็จ แอพของคุณจะได้รับการตอบกลับแบบ JSON ที่มี ID เซสชั่นการอัพโหลด

{
  "id": "upload:<UPLOAD_SESSION_ID>"
}

ขั้นตอนที่ 2: เริ่มอัพโหลด

เริ่มอัพโหลดไฟล์โดยการส่งคำขอ POST ไปยังตำแหน่งข้อมูล /upload:<UPLOAD_SESSION_ID> โดยที่ตั้งค่า file_offset ต่อไปนี้ให้เป็น 0

รูปแบบคำสั่งของคำขอ

curl -i -X POST "https://graph.facebook.com/v21.0/upload:<UPLOAD_SESSION_ID>"
  --header "Authorization: OAuth <USER_ACCESS_TOKEN>"
  --header "file_offset: 0"
  --data-binary @<FILE_NAME>

คุณจะต้องใส่โทเค็นการเข้าถึงไว้ในส่วนหัว มิฉะนั้นจะเรียกใช้ไม่สำเร็จ

เมื่อดำเนินการสำเร็จ แอพของคุณจะได้รับแฮนเดิลไฟล์ที่จะใช้สำหรับเรียกใช้ API เพื่อเผยแพร่ไฟล์ไปยังตำแหน่งข้อมูล

{
  "h": "<UPLOADED_FILE_HANDLE>"
}

ตัวอย่างการตอบกลับ

{
    "h": "2:c2FtcGxl..."
}

ดำเนินการอัพโหลดต่อจากที่ค้างไว้

หากคุณเริ่มเซสชั่นการอัพโหลดไปแล้วแต่ใช้เวลานานกว่าที่คาดไว้หรือเกิดการติดขัดขึ้น ให้ส่งคำขอ GET ไปยังตำแหน่งข้อมูล /upload:<UPLOAD_SESSION_ID> จากขั้นตอนที่ 1

รูปแบบคำสั่งของคำขอ

จัดรูปแบบเพื่อให้อ่านได้ง่าย

curl -i -X GET "https://graph.facebook.com/v21.0/upload:<UPLOAD_SESSION_ID>"
  --header "Authorization: OAuth <USER_ACCESS_TOKEN>""

เมื่อดำเนินการสำเร็จ แอพของคุณจะได้รับการตอบกลับแบบ JSON พร้อมค่า file_offset ซึ่งคุณสามารถนำมาใช้เพื่อดำเนินการอัพโหลดต่อจากจุดที่ติดขัดได้

{
  "id": "upload:<UPLOAD_SESSION_ID>"
  "file_offset": <FILE_OFFSET>"
}

ใช้ค่า file_offset นี้เพื่อส่งคำขอ POST อีกรายการหนึ่งเหมือนกับที่ส่งในขั้นตอนที่ 2 ซึ่งจะเป็นการดำเนินการอัพโหลดต่อจากจุดที่ติดขัด

ขั้นตอนถัดไป