คุณสามารถสืบค้นตำแหน่งข้อมูล oEmbed ของ Instagram เพื่อรับ HTML สำหรับฝังและเมตาดาต้าพื้นฐานของโพสต์บน Instagram ได้ ทั้งนี้เพื่อแสดงโพสต์ดังกล่าวในอีกเว็บไซต์หรืออีกแอพหนึ่ง รองรับโพสต์ที่เป็นรูปภาพ, วิดีโอ, คลิป Reels และฟีด
ไปที่ศูนย์ช่วยเหลือของ Instagram เพื่อเรียนรู้วิธีรับรหัสแบบฝังจากโพสต์แบบสาธารณะหรือโปรไฟล์บน Instagram
คู่มือนี้จะถือว่าคุณได้ลงทะเบียนเป็นผู้พัฒนา Meta และได้สร้างแอพ Meta ไว้แล้ว
คุณจำเป็นต้องมีสิ่งต่อไปนี้
สำหรับฟีเจอร์อ่านของ oEmbed – ต้องมี
การตรวจสอบแอพ Metaตำแหน่งข้อมูลทั้งหมดสามารถเข้าถึงได้ผ่านโฮสต์ graph.facebook.com
ขีดจำกัดอัตราจะขึ้นอยู่กับประเภทของโทเค็นการเข้าถึงที่แอพของคุณรวมไว้ในคำขอแต่ละรายการ
แอพที่ใช้โทเค็นการเข้าถึงแอพจะสามารถสร้างคำขอได้สูงสุดถึง 5 ล้านรายการต่อเวลา 24 ชั่วโมง
ขีดจำกัดอัตราโทเค็นของไคลเอ็นต์จะต่ำกว่าขีดจำกัดอัตราโทเค็นของแอพอย่างมาก ทั้งนี้ เราไม่แสดงให้เห็นขีดจำกัดจริงเนื่องจากขีดจำกัดจะเปลี่ยนแปลงไปตามกิจกรรมในแอพของคุณ อย่างไรก็ตาม คุณก็อาจสบายใจได้ว่าแอพของคุณจะไม่ถึงขีดจำกัด เว้นแต่จะแสดงพฤติกรรมคล้ายบอท เช่น การรวมกลุ่มคำขอหลายพันรายการหรือการส่งคำขอหลายพันรายการต่อตัวแทนหรือผู้ใช้แอพหนึ่งราย
คุณสามารถรับ HTML แบบฝังได้จากการเขียนโปรแกรมหรือในแอป Instagram app
หากต้องการรับ HTML สำหรับฝังของโพสต์บน Instagram จากการเขียนโปรแกรม ให้ส่งคำขอไปยัง
GET /instagram_oembed?url=<URL_OF_THE_POST>&access_token=<ACCESS_TOKEN>
แทนที่ <URL_OF_THE_POST>
ด้วย URL ของโพสต์บน Instagram ที่คุณต้องการสืบค้นและ โทเค็น<ACCESS_TOKEN>
ด้วยโทเค็นการเข้าถึงแอพหรือไคลเอ็นต์ หรือการอนุญาตAuthorization
ส่งมาให้เราในส่วนหัว HTTP
Authorization: Bearer <ACCESS_TOKEN>
หากคุณกำลังใช้โทเค็นการเข้าถึงไคลเอ็นต์ โปรดทราบว่าคุณจะต้องใช้โทเค็นนั้นร่วมกับ ID ของแอพ Meta โดยใช้สัญลักษณ์ขีดตั้ง ไม่เช่นนั้นคำขอจะล้มเหลว
เมื่อสำเร็จ API จะตอบกลับด้วยอ็อบเจ็กต์ JSON ที่มี HTML สำหรับฝังของโพสต์ดังกล่าวและข้อมูลเพิ่มเติม ระบบจะมอบหมาย HTML สำหรับฝังไปยังคุณสมบัติ html
คุณสามารถดูรายการพารามิเตอร์สตริงการสืบค้นที่คุณสามารถเพิ่มเพื่อประกอบคำขอได้ที่ข้อมูลอ้างอิงเกี่ยวกับ oEmbed ของ Instagram คุณสามารถป้อนพารามิเตอร์สตริงการสืบค้น fields
เพื่อระบุว่าคุณต้องการให้ระบบส่งช่องใดกลับมาได้ โดยหากไม่ระบุ ระบบรวมช่องตามค่าเริ่มต้นทั้งหมดมาในการตอบกลับด้วย
curl -X GET \
"https://graph.facebook.com/v21.0
/instagram_oembed?url=https://www.instagram.com/p/fA9uwTtkSN/&access_token=IGQVJ..."
curl -i -X GET \
--header "Authorization: Bearer 96481..." \
"https://graph.facebook.com/v21.0
/instagram_oembed?url=https%3A%2F%2Fwww.instagram.com%2Fp%2FfA9uwTtkSN"
ค่าบางตัวอาจถูกย่อด้วยจุดไข่ปลา (...
) เพื่อให้อ่านได้ง่าย
{ "version": "1.0", "author_name": "diegoquinteiro", "provider_name": "Instagram", "provider_url": "https://www.instagram.com/", "type": "rich", "width": 658, "html": "<blockquote class=\"instagram-media\" data-instgrm-ca...", "thumbnail_width": 640, "thumbnail_height": 640 }
พารามิเตอร์สตริงการสืบค้น url
จะยอมรับรูปแบบ URL ดังต่อไปนี้:
https://www.instagram.com/p/{media-shortcode}/
https://www.instagram.com/tv/{media-shortcode}/
https://www.instagram.com/{username}/guide/{slug}/{guide_id}
HTML สำหรับฝังจะมีจุดอ้างอิงไปยังคลัง JavaScript embed.js ของ Instagram เมื่อคลังโหลด จะมีการสแกนเพจเพื่อหา HTML ของโพสต์ และสร้างโพสต์ที่ผ่านการเรนเดอร์อย่างสมบูรณ์ หากคุณต้องการโหลดคลังแยกต่างหาก ให้เพิ่มพารามิเตอร์สตริงการสืบค้น omitscript=true
ไว้ในคำขอของคุณ หากต้องการเริ่มต้นการทำงานของ HTML แบบฝังด้วยตนเอง ให้เรียกใช้ฟังก์ชั่น instgrm.Embeds.process()
หลังจากการโหลดคลัง
โพสต์แบบฝังนั้นจะตอบสนองต่อแวดล้อมและจะปรับขนาดให้เข้ากับคอนเทนเนอร์ ซึ่งหมายความว่าความสูงจะแปรผันตามความกว้างของคอนเทนเนอร์และความยาวของคำบรรยายภาพ คุณสามารถกำหนดความกว้างสูงสุดได้โดยการใส่พารามิเตอร์สตริงการสืบค้น maxwidth
ไว้ในคำขอของคุณ
เราขอแนะนำให้คุณเรนเดอร์ HTML สำหรับฝังของโพสต์ทั้งหมดเมื่อใดก็ตามที่ทำได้ หากไม่สามารถดำเนินการนี้ได้ คุณสามารถรับ URL รูปภาพขนาดย่อของโพสต์และนำมาเรนเดอร์แทนได้ อย่างไรก็ตาม หากดำเนินการนี้ คุณจะต้องระบุที่มาไว้อย่างชัดเจนที่ด้านข้างรูปภาพนั้นๆ ซึ่งรวมถึงการระบุที่มาไปที่ผู้สร้างสรรค์คนแรกและไปที่ Instagram และใส่ลิงก์ไปยังโพสต์ใน Instagram ที่คุณสืบค้นอยู่
หากต้องการรับ URL ภาพขนาดย่อของโพสต์และข้อมูลการระบุที่มา ให้ส่งคำขอไปยัง
GET /instagram_oembed ?url=<URL_OF_THE_POST> &maxwidth=<MAX_WIDTH> &fields=thumbnail_url,author_name,provider_name,provider_url &access_token=<ACCESS_TOKEN>
แทนที่ <URL_OF_THE_POST>
ด้วย URL ของโพสต์บน Instagram ที่คุณต้องการสืบค้น รวมถึง <MAX_WIDTH>
ขนาดใหญ่ที่สุดของภาพขนาดย่อที่คุณต้องการเรนเดอร์ และ <ACCESS_TOKEN>
พร้อมโทเค็นการเข้าถึงแอพหรือไคลเอ็นต์
curl -i -X GET \
"https://graph.facebook.com/v21.0
/instagram_oembed?url=https%3A%2F%2Fwww.instagram.com%2Fp%2FfA9uwTtkSN&maxwidth=320&fields=thumbnail_url%2Cauthor_name%2Cprovider_name%2Cprovider_url&access_token=96481..."
ค่าบางตัวอาจถูกย่อด้วยจุดไข่ปลา (...
) เพื่อให้อ่านได้ง่าย
{ "thumbnail_url": "https://scontent.cdninstagram.com/v/t51.288...", "author_name": "diegoquinteiro", "provider_name": "Instagram", "provider_url": "https://www.instagram.com/" }
เมื่อคุณส่งแอพเข้ารับการตรวจสอบ ในช่องแบบฟอร์มบอกเราว่าทำไมคุณจึงขอฟีเจอร์การอ่านของ Oembed > โปรดระบุ URL ที่เราสามารถทดสอบฟีเจอร์การอ่านของ Oembed ให้ใช้ตำแหน่งข้อมูล oEmbed ของ Instagram เพื่อรับ HTML แบบฝังสำหรับโพสต์สาธารณะบนเพจ Facebook หรือIเพจ nstagramอย่างเป็นทางการของเรา จากนั้นให้เพิ่ม HTML แบบฝังที่ได้รับมาไปยังจุดที่คุณต้องการแสดงเนื้อหา oEmbed และป้อน URL ของเพจนั้นลงในช่องแบบฟอร์ม
เมื่อคุณได้รับการอนุมัติให้ใช้ฟีเจอร์ oEmbed Read แล้ว คุณจะสามารถฝังเพจ โพสต์ หรือวิดีโอของคุณเองโดยใช้ URL ของรายการนั้นๆ ได้