LINE URI action: ขีดจำกัด 10,000 อักขระและลิงก์สำหรับเดสก์ท็อป
URI action ของ LINE Messaging API รองรับ uri และ altUri.desktop ได้ ไม่เกิน 10,000 อักขระต่อพร็อพเพอร์ตี แล้ว โดย LINE ประกาศการเปลี่ยนแปลงเมื่อวันที่ 27 ตุลาคม 2026 ควรแก้กฎตรวจสอบเฉพาะสองพร็อพเพอร์ตีนี้ ไม่ใช่ขยายทุกฟิลด์ URL หรือข้อความ สำหรับ Flex Message เมื่อกำหนดลิงก์เดสก์ท็อปไว้ LINE บน macOS และ Windows จะใช้ลิงก์นั้นแทน uri แต่ไม่ได้หมายความว่าข้อความทุกประเภทใช้ตัวเลือกนี้ได้
ประเด็นสำคัญ
- ขีดจำกัดใหม่ใช้กับปลายทางของ URI action ไม่ใช่จำนวนปุ่มหรือขนาดข้อความทั้งชุด
- ตรวจสอบสตริง URI ที่จะส่งจริง หลังประกอบพารามิเตอร์และเข้ารหัสแล้ว
- ใช้
altUri.desktopใน URI action ของ Flex Message ที่รองรับ ไม่ใช่ quick reply - การรับข้อความของ API การเปิดหน้าปลายทาง และการทำรายการสำเร็จ เป็นคนละสิ่งที่ต้องตรวจสอบ
LINE เปลี่ยนอะไร และไม่ได้เปลี่ยนอะไร
ข่าวทางการของ LINE ปี 2026 บันทึกการเปลี่ยนแปลงวันที่ 27 ตุลาคมไว้ ส่วน เอกสาร URI action ปัจจุบัน ระบุขีดจำกัด 10,000 อักขระสำหรับทั้งสองพร็อพเพอร์ตี
| พร็อพเพอร์ตี | ขีดจำกัดปัจจุบัน | ความหมาย |
|---|---|---|
uri | 10,000 อักขระ | URI ที่เปิดเมื่อเรียกใช้ action |
altUri.desktop | 10,000 อักขระ | URI ทางเลือกสำหรับ LINE บน macOS และ Windows ในบริบทที่รองรับ |
LINE ระบุ scheme ที่ใช้ได้คือ http, https, line และ tel และกำหนดให้ URI ใช้ percent-encoding แบบ UTF-8 การใช้ scheme ถูกต้องและมีความยาวไม่เกินกำหนด ไม่ได้ยืนยันว่าหน้านั้นมีอยู่หรือผู้ใช้มีสิทธิ์เข้าถึง
อย่าเปลี่ยนเพดานทุกจุดในแอปเป็น 10,000 เพราะ URL รูปภาพ ป้ายกำกับ เนื้อหาข้อความ และโครงสร้างคอนเทนเนอร์มีข้อกำหนดแยกกัน หากปัญหาคือมีตัวเลือกมากเกินไป ไม่ใช่ลิงก์ยาวเกินไป ให้อ่าน ทางเลือกแทน buttons template ของ LINE
กำหนดปลายทางของมือถือและเดสก์ท็อปให้ชัดเจน
เอกสาร LINE ระบุว่าเมื่อมี altUri.desktop แล้ว LINE บน macOS และ Windows จะไม่ใช้ uri แต่จะใช้ปลายทางเดสก์ท็อปแทน พร็อพเพอร์ตีนี้รองรับ URI action ใน Flex Message และไม่ทำงานใน quick reply ประกาศยังระบุ Flex Message เป็นรูปแบบที่ใช้พร็อพเพอร์ตีเดสก์ท็อป จึงไม่ควรสรุปว่าใช้ได้กับ template message หรือ rich menu ด้วย
ตัวอย่างนี้เป็นเพียง action object สำหรับใส่ใน Flex Message ไม่ใช่คำขอส่งข้อความแบบสมบูรณ์:
{
"type": "uri",
"label": "ดูรายละเอียด",
"uri": "https://example.com/mobile/orders/42",
"altUri": {
"desktop": "https://example.com/orders/42"
}
}
URL เหล่านี้เป็นตัวอย่าง ไม่ใช่หน้าคำสั่งซื้อที่ใช้งานได้จริง ให้วาง action ในคอมโพเนนต์ที่รองรับ แล้วตรวจสอบข้อความทั้งชุดตามเอกสาร LINE หากต้องการแชร์หน้า MINI App ให้ใช้ ขั้นตอน custom action button และ permanent link ขีดจำกัดที่เพิ่มขึ้นไม่ได้แทนที่วิธีสร้างลิงก์ MINI App ที่ถูกต้อง
ตรวจ URI สุดท้าย ไม่ใช่แค่ข้อความในช่องกรอก
ก่อนเปิดให้ใช้ลิงก์ที่ยาวขึ้น แนะนำให้ตรวจดังนี้:
- ค้นหากฎจำกัดความยาวทุกจุดในแอป ตรวจตัวแก้ไข กฎฝั่ง backend ตัวสร้างข้อความ และโมเดลของ SDK ที่ใช้อยู่ แก้เฉพาะสองพร็อพเพอร์ตีของ URI action และตรวจเวอร์ชัน SDK ที่ติดตั้งจริง อย่าคิดว่าทุกเวอร์ชันรองรับขีดจำกัดใหม่แล้ว
- ประกอบก่อนวัดความยาว สร้างปลายทางพร้อม query parameter และใช้ percent-encoding แบบ UTF-8 ให้ถูกต้อง ตรวจค่าพร็อพเพอร์ตีสุดท้าย ไม่ใช่ข้อความก่อนเข้ารหัสหรือความยาว JSON ทั้งก้อน อย่าเข้ารหัส URL ทั้งเส้นเหมือนเป็นค่า query เดียว และอย่าเข้ารหัสค่าที่เข้ารหัสไว้แล้วซ้ำ
- ตรวจทั้งสองปลายทางแยกกัน URI มือถือที่ถูกต้องไม่ได้ยืนยัน URI เดสก์ท็อป หน้าบนเดสก์ท็อปควรใช้งานได้นอกขั้นตอนเฉพาะมือถือ พร้อมจัดการการเข้าสู่ระบบและกรณีข้อมูลใช้ไม่ได้
- ตรวจสิทธิ์ที่หน้าปลายทาง ตามแนวทางความปลอดภัยของแอป ไม่ควรใส่ API key ข้อมูลรับรองเซสชัน หรือข้อมูลส่วนบุคคลที่ไม่จำเป็นลงในลิงก์ พื้นที่มากขึ้นไม่ใช่เหตุผลให้ใส่ข้อมูลลูกค้าทั้งระเบียนใน query string ควรใช้ตัวอ้างอิงระเบียนที่เซิร์ฟเวอร์ตรวจสิทธิ์ก่อนเปิดข้อมูล
- ทดสอบการกดจริง ยืนยันว่าข้อความทั้งชุดได้รับการยอมรับ จากนั้นกด action บนไคลเอนต์มือถือและเดสก์ท็อปเป้าหมาย ตรวจหน้าสุดท้ายหลัง redirect ไม่ใช่ดูเพียง URL ที่ตัวสร้างข้อความคืนมา
ชุดทดสอบควรครอบคลุมค่าที่เท่ากับและเกินขีดจำกัด ค่า query ที่มีอักขระนอก ASCII หลังเข้ารหัส URI เดสก์ท็อปที่ผิดเพียงตัวเดียว และหน้าปลายทางที่ต้องเข้าสู่ระบบ ทั้งหมดนี้เป็นข้อเสนอสำหรับการทดสอบ ไม่ใช่ผลการทดสอบที่ดำเนินการแล้ว อย่าสรุปว่าทั้งกระบวนการสำเร็จจากผลตอบกลับการส่งเพียงอย่างเดียว
แยกข้อกำหนดของ UnifyPort ออกจากกัน
การเปลี่ยนแปลงนี้เป็นของ LINE Messaging API ทางการ ตารางรองรับข้อความมาตรฐานของ UnifyPort ไม่ได้ระบุการส่ง URI action ของ LINE Flex Message หรือฟิลด์ altUri.desktop จึงไม่ควรเพิ่มฟิลด์นี้ในคำขอ UnifyPort แล้วคาดว่าจะได้การ์ดแบบเนทีฟ
หากต้องใช้การ์ดโต้ตอบแบบเนทีฟ ให้เลือกการเชื่อมต่อ LINE ทางการ ส่วน unofficial interface ของ UnifyPort เหมาะกับอีกงานหนึ่ง คือเชื่อมต่อบัญชี LINE ทั่วไปและประมวลผลบทสนทนาที่รองรับผ่าน event รูปแบบเดียวกัน ดูเส้นทางบัญชีนี้ใน คู่มือยืนยันตัวตน LINE การเพิ่มความยาว URI และการใช้ event envelope ร่วมกัน ไม่ได้เปลี่ยนตัวตนหรือความสามารถของการเชื่อมต่อที่เลือก
คำถามที่พบบ่อย
URI action ของ LINE ยังจำกัดที่ 1,000 อักขระหรือไม่?
ไม่ใช่แล้ว ประกาศวันที่ 27 ตุลาคม 2026 เพิ่มขีดจำกัด และเอกสารปัจจุบันระบุ 10,000 อักขระสำหรับทั้ง uri และ altUri.desktop หากค่ายาวยังถูกปฏิเสธ ให้ตรวจ validator ภายในแอป
altUri.desktop ใช้ใน quick reply ได้หรือไม่?
ไม่ได้ LINE ระบุไว้อย่างชัดเจนว่าไม่ทำงานใน quick reply ให้ใช้ในบริบท Flex Message ที่เอกสารรองรับ และทดสอบไคลเอนต์เดสก์ท็อปที่เกี่ยวข้อง
จำนวนปุ่มหรือสิทธิ์แชร์ MINI App เพิ่มด้วยหรือไม่?
ไม่เพิ่ม การเปลี่ยนแปลงครอบคลุมเฉพาะความยาวของพร็อพเพอร์ตี URI action ที่ระบุ ข้อจำกัดเลย์เอาต์ ขั้นตอนแชร์ การยืนยันตัวตน และสิทธิ์เข้าถึงปลายทางยังเป็นเรื่องแยกกัน
ขั้นตอนถัดไปและแหล่งอ้างอิง
เริ่มตรวจตัวสร้างข้อความตาม เอกสาร URI action ของ LINE หากยังเลือกระหว่างการ์ดเนทีฟกับข้อความรูปแบบมาตรฐาน ให้ตรวจ ตารางรองรับของ UnifyPort ก่อนพัฒนาขั้นตอนส่ง
ตรวจสอบแหล่งทางการเมื่อ 2026-11-07:
เปลี่ยนการเชื่อมต่อข้อความให้เป็น pipeline ผลิตภัณฑ์ที่เสถียร
เริ่มจากการส่งผ่าน API เดียว แล้วส่งข้อความขาเข้าทั้งหมดกลับสู่ระบบธุรกิจของคุณด้วย event มาตรฐาน