oEmbed ของ Facebook

ตำแหน่งข้อมูล oEmbed ของ Facebook ช่วยให้คุณสามารถรับ HTML สำหรับฝังและเมตาดาต้าพื้นฐานสำหรับเพจ โพสต์ และวิดีโอ เพื่อนำไปแสดงในอีกเว็บไซต์หรือแอพหนึ่งได้

ฟีเจอร์ oEmbed Read จะเข้ามาแทนที่ผลิตภัณฑ์ oEmbed หากคุณปรับใช้ผลิตภัณฑ์ oEmbed ก่อนวันที่ 8 มิถุนายน 2021 คุณจะต้องผ่านการตรวจสอบแอพสำหรับฟีเจอร์ oEmbed Read ให้เสร็จสิ้นภายในวันที่ 7 กันยายน หากคุณยังไม่ได้รับการอนุมัติฟีเจอร์ oEmbed Read ภายในวันที่ 7 กันยายน 2021 การโหลดเพื่อใช้งาน oEmbed ของคุณจะไม่สำเร็จ

การใช้งานทั่วไป

  • การเรนเดอร์เพจ โพสต์ และวิดีโอบน Facebook ในแอพส่งข้อความ
  • การฝังเพจ โพสต์ และวิดีโอบน Facebook ในเว็บไซต์และบล็อก
  • การเรนเดอร์เพจ โพสต์ และวิดีโอบน Facebook ในระบบจัดการเนื้อหา

ตำแหน่งข้อมูล

ตำแหน่งข้อมูลคำอธิบาย

GET /oembed_page

รับ HTML สำหรับฝังและเมตาดาต้าพื้นฐานของเพจ Facebook

GET /oembed_post

รับ HTML สำหรับฝังและเมตาดาต้าพื้นฐานของโพสต์บน Facebook

GET /oembed_video

รับ HTML สำหรับฝังและเมตาดาต้าพื้นฐานของวิดีโอบน Facebook

ข้อจำกัด

ตำแหน่งข้อมูล oEmbed ของ Facebook มีไว้ใช้สำหรับฝังเนื้อหาของ Facebook ในเว็บไซต์และแอพเท่านั้น โดยจะไม่ใช้เพื่อจุดประสงค์อื่นใดอีก ห้ามไม่ให้มีการใช้เมตาดาต้าและเนื้อหาของเพจ โพสต์ หรือวิดีโอ (หรือแหล่งที่มาของรายการเหล่านั้น) เพื่อจุดประสงค์อื่นใดนอกเหนือไปจากการมอบมุมมองการแสดงผลแบบฟรอนท์เอนด์ของเพจ โพสต์ หรือวิดีโอโดยเด็ดขาด ข้อห้ามนี้จะรวมไปถึงการใช้ การจัดการ การดึง หรือการคงไว้ซึ่งเมตาดาต้าและเนื้อหา โดยรวมถึงแต่ไม่จำกัดเพียงการรับข้อมูลเกี่ยวกับเพจ โพสต์ และวิดีโอจากเมตาดาต้าเพื่อจุดประสงค์ในการวิเคราะห์

การตรวจสอบแอพ

แอพของคุณจะต้องผ่านการตรวจสอบแอพสำหรับฟีเจอร์ oEmbed Read ก่อนจึงจะใช้งาน oEmbed ได้

สำหรับช่องโปรดระบุ URL ที่เราสามารถทดสอบ Oembed Read ในแบบฟอร์ม ให้ใช้ตำแหน่งข้อมูล oEmbed เพื่อรับ HTML สำหรับฝังของวิดีโอหรือโพสต์สาธารณะทั้งหมดบนเพจ Facebook หรือเพจ Instagram อย่างเป็นทางการของเรา (หรือรับ HTML สำหรับฝังของเพจแต่ละแบบเหล่านั้น) เพิ่ม HTML สำหรับฝังที่ระบบส่งกลับมาไปยังเพจของคุณเองที่คุณจะแสดงเนื้อหา oEmbed และป้อน URL ของเพจนั้นลงในช่องดังกล่าวในแบบฟอร์ม

เมื่อคุณได้รับการอนุมัติให้ใช้ฟีเจอร์ oEmbed Read แล้ว คุณจะสามารถฝังเพจ โพสต์ หรือวิดีโอของคุณเองโดยใช้ URL ของรายการนั้นๆ ได้

โทเค็นการเข้าถึง

ตำแหน่งข้อมูล oEmbed ของ Facebook จะต้องมีโทเค็นการเข้าถึงแอพ (แนะนำ) หรือโทเค็นการเข้าถึงไคลเอ็นต์อย่างใดอย่างหนึ่ง

โทเค็นการเข้าถึงแอพ

หากแอพของคุณใช้เซิร์ฟเวอร์แบ็กเอนด์ เราขอแนะนำให้คุณใช้โทเค็นการเข้าถึงแอพเมื่อเข้าถึงตำแหน่งข้อมูล oEmbed ขีดจำกัดอัตราจะขึ้นอยู่กับประเภทของโทเค็นที่รวมอยู่ในคำขอ และขีดจำกัดอัตราของโทเค็นแอพจะจำกัดคำขออยู่ที่ 5 ล้านรายการต่อวัน

คำแนะนำสำหรับการสร้างโทเค็นการเข้าถึงแอพสามารถดูได้จากส่วนโทเค็นแอพของเอกสารประกอบเกี่ยวกับโทเค็นการเข้าถึงของเรา

โปรดทราบว่าโทเค็นการเข้าถึงแอพไม่ควรใช้ในรูปแบบฝั่งไคลเอ็นต์ โดยควรรักษาไว้อย่างปลอดภัยและจัดเก็บในเซิร์ฟเวอร์ของคุณเสมอ หากแอพของคุณต้องใช้โทเค็นทางฝั่งไคลเอ็นต์ ให้ใช้โทเค็นการเข้าถึงไคลเอ็นต์แทน

โทเค็นการเข้าถึงไคลเอ็นต์

หากแอพของคุณต้องเข้าถึงตำแหน่งข้อมูล oEmbed จากตัวแทนผู้ใช้ เช่น อุปกรณ์มือถือหรือเบราว์เซอร์เว็บ แอพของคุณต้องใช้โทเค็นการเข้าถึงไคลเอ็นต์และจะมีข้อกำหนดภายใต้ขีดจำกัดอัตราของโทเค็นของไคลเอ็นต์

หากต้องการรับโทเค็นการเข้าถึงไคลเอ็นต์ ให้ลงชื่อเข้าใช้แดชบอร์ดของแอพและไปที่การตั้งค่า > ขั้นสูง > การรักษาความปลอดภัย > โทเค็นของไคลเอ็นต์

โทเค็นการเข้าถึงไคลเอ็นต์ไม่สามารถใช้ในคำขอตำแหน่งข้อมูล oEmbed เพียงโดดๆ ได้ โดยต้องใช้ร่วมกับ ID ของแอพที่คุณมี ซึ่งต่างจากโทเค็นการเข้าถึงแอพ หากต้องการดำเนินการดังกล่าว ให้ใส่โทเค็นของคุณไว้ท้าย ID ของแอพ โดยคั่นด้วยสัญลักษณ์ขีดตั้ง (|) ดังนี้

{app-id}|{client-token}

ตัวอย่างเช่น:

access_token=1234|5678

ขีดจำกัดอัตรา

ขีดจำกัดอัตราจะขึ้นอยู่กับประเภทของโทเค็นการเข้าถึงที่แอพของคุณรวมไว้ในคำขอแต่ละรายการ

ขีดจำกัดอัตราโทเค็นของแอพ

แอพที่ใช้โทเค็นการเข้าถึงแอพจะสามารถสร้างคำขอได้สูงสุดถึง 5 ล้านรายการต่อเวลา 24 ชั่วโมง

ขีดจำกัดอัตราโทเค็นของไคลเอ็นต์

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

การรับ HTML สำหรับฝัง

หากต้องการรับ HTML สำหรับฝังของเพจ โพสต์ หรือวิดีโอ ให้ส่งคำขอไปยังตำแหน่งข้อมูล oEmbed ของเพจ โพสต์ หรือวิดีโอที่สอดคล้องกัน ดังนี้

เป้าหมายตำแหน่งข้อมูลและโครงสร้างการสืบค้น

เพจ

GET /oembed_page?url={url}&access_token={access-token}

โพสต์

GET /oembed_post?url={url}&access_token={access-token}

วิดีโอ

GET /oembed_video?url={url}&access_token={access-token}

แทนที่ {url} ด้วย URL ของเพจ โพสต์ หรือวิดีโอที่คุณต้องการสืบค้นและ {access-token} ด้วยโทเค็นการเข้าถึงแอพหรือไคลเอ็นต์ (หรือส่งมาให้เราในส่วนหัว HTTP) หากคุณกำลังใช้โทเค็นการเข้าถึงไคลเอ็นต์ โปรดทราบว่าคุณต้องรวมโทเค็นนั้นเข้ากับ ID ของแอพโดยใช้สัญลักษณ์ขีดตั้ง ไม่เช่นนั้นคำขอจะล้มเหลว

เมื่อสำเร็จ API จะตอบกลับด้วยอ็อบเจ็กต์ JSON ที่มี HTML สำหรับฝังของเพจ โพสต์ หรือวิดีโอดังกล่าว และข้อมูลเพิ่มเติมเกี่ยวกับเพจ โพสต์ หรือวิดีโอนั้นๆ ระบบจะมอบหมาย HTML แบบฝังไปยังคุณสมบัติ html

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

ตัวอย่างคำขอสำหรับเพจ

curl -i -X GET \
 "https://graph.facebook.com/v21.0/oembed_page?url=https%3A%2F%2Fwww.facebook.com%2FCDC&access_token=96481..."

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

ค่าบางตัวอาจถูกย่อด้วยจุดไข่ปลา (...) เพื่อให้อ่านได้ง่าย

{
  "provider_url": "https://www.facebook.com",
  "provider_name": "Facebook",
  "height": 500,
  "html": "<div id=\"fb-root\"></div><script async=\"1\" defer=...",
  "type": "rich",
  "version": "1.0",
  "width": 340
}

รูปแบบ URL

พารามิเตอร์สตริงการสืบค้น url จะยอมรับรูปแบบ URL ดังต่อไปนี้

เพจ

https://www.facebook.com/{page-name}
https://www.facebook.com/{page-id}

โพสต์

https://www.facebook.com/{page-name}/posts/{post-id}
https://www.facebook.com/{username}/posts/{post-id}
https://www.facebook.com/{username}/activity/{activity-id}
https://www.facebook.com/photo.php?fbid={photo-id}
https://www.facebook.com/photos/{photo-id}
https://www.facebook.com/permalink.php?story_fbid={post-id}&id={page-or-user-id}
https://www.facebook.com/media/set?set={set-id}
https://www.facebook.com/questions/{question-id}
https://www.facebook.com/notes/{username}/{note-url}/{note-id}

วิดีโอ

https://www.facebook.com/{page-name}/videos/{video-id}/
https://www.facebook.com/{username}/videos/{video-id}/
https://www.facebook.com/video.php?id={video-id}
https://www.facebook.com/video.php?v={video-id}

SDK JS

โดยค่าเริ่มต้นแล้ว HTML สำหรับฝังจะมีจุดอ้างอิงไปยังคลัง JavaScript sdk.js หากต้องการรับ HTML สำหรับฝังโดยไม่มีจุดอ้างอิงเพื่อให้คุณโหลดแยกกันได้ ให้ใส่พารามิเตอร์สตริงการสืบค้น omitscript=true เข้าไป

การส่งโทเค็นการเข้าถึงในส่วนหัว

หากคุณไม่ต้องการใส่โทเค็นการเข้าถึงในสตริงการสืบค้นของคุณ ให้ส่งมาให้เราผ่านส่วนหัว HTTP Authorization แทน

Authorization: Bearer {access-token}

ตัวอย่างเช่น:

curl -i -X GET \
  "https://graph.facebook.com/v21.0/oembed_page?url=https%3A%2F%2Fwww.facebook.com%2FCDC" \
  --header "Authorization: Bearer 96481..."