ช่วงนี้วุ่นๆกับการทำ LIFF แล้วติดปัญหาเวลามี parameter แล้วงงกับพฤติกรรมของมันเวลา Redirect
ทาง Line เค้าก็ทำ Video กับ Document อธิบายไว้แล้วแหละ แต่ก็ยังไม่ค่อยเข้าใจอยู่ดี เลยต้องลองด้วยตัวเอง
โจทย์ก็คือ เรามี LIFF Url แบบนี้
https://liff.line.me/1656449211-9Kym0GQ7
เวลาใช้จริงเราก็อยากจะแนบ query parameter เข้าไปด้วย แบบนี้
https://liff.line.me/1656449211-9Kym0GQ7?template_id=1
เมื่อเราเปิด LIFF จากใน line จะเจอว่า มีการเรียกมาที่ /?liff.state=%3Ftemplate_id%3D1
เมื่อทำการ initialize สำเร็จ จะมีการเรียกเข้ามาอีกครั้งที่ /?template_id=1 และ สามารถอ่านค่า query param ได้
สรุปว่า query param ไม่ได้หายไปไหน แต่ต้องอ่านให้ถูก ถ้าจะอ่านจาก redirect ครั้งแรก มันจะถูก encode มาใน liff.state
แต่ถ้าจะอ่านจาก redirect ครั้งที่สอง ก็อ่านจาก URL ตามปกติ
Top comments (0)