DEV Community

Prayoch Rujira
Prayoch Rujira

Posted on

5 3

บันทึก การ Redirect ของ LIFF App

ช่วงนี้วุ่นๆกับการทำ LIFF แล้วติดปัญหาเวลามี parameter แล้วงงกับพฤติกรรมของมันเวลา Redirect
ทาง Line เค้าก็ทำ Video กับ Document อธิบายไว้แล้วแหละ แต่ก็ยังไม่ค่อยเข้าใจอยู่ดี เลยต้องลองด้วยตัวเอง

โจทย์ก็คือ เรามี LIFF Url แบบนี้

https://liff.line.me/1656449211-9Kym0GQ7
Enter fullscreen mode Exit fullscreen mode

เวลาใช้จริงเราก็อยากจะแนบ query parameter เข้าไปด้วย แบบนี้

https://liff.line.me/1656449211-9Kym0GQ7?template_id=1
Enter fullscreen mode Exit fullscreen mode

เมื่อเราเปิด LIFF จากใน line จะเจอว่า มีการเรียกมาที่ /?liff.state=%3Ftemplate_id%3D1

Image description

เมื่อทำการ initialize สำเร็จ จะมีการเรียกเข้ามาอีกครั้งที่ /?template_id=1 และ สามารถอ่านค่า query param ได้

Image description

สรุปว่า query param ไม่ได้หายไปไหน แต่ต้องอ่านให้ถูก ถ้าจะอ่านจาก redirect ครั้งแรก มันจะถูก encode มาใน liff.state
แต่ถ้าจะอ่านจาก redirect ครั้งที่สอง ก็อ่านจาก URL ตามปกติ

Top comments (0)

A Workflow Copilot. Tailored to You.

Pieces.app image

Our desktop app, with its intelligent copilot, streamlines coding by generating snippets, extracting code from screenshots, and accelerating problem-solving.

Read the docs

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay