ข้ามไปยังเนื้อหาหลัก

นำ UI ของคุณมาใช้

Logto อนุญาตให้นำ UI ของคุณเองมาใช้แทนอินเทอร์เฟซประสบการณ์การลงชื่อเข้าใช้ที่มีอยู่ได้อย่างสมบูรณ์ นอกเหนือจากตัวเลือกการปรับแต่ง UI ที่มีให้ล่วงหน้า ฟีเจอร์นี้ช่วยให้คุณอัปโหลดไฟล์ zip ที่มีไฟล์ UI ที่คุณออกแบบเอง (HTML, CSS, JavaScript, รูปภาพ ฯลฯ) ให้ Logto Cloud โฮสต์ไว้บนเซิร์ฟเวอร์ และนำมาใช้เป็น ประสบการณ์การลงชื่อเข้าใช้ สำหรับผู้ใช้ tenant ของคุณ

บันทึก:

ฟีเจอร์นี้ต้องการให้ UI ของคุณรองรับรูปแบบ Single Page Application (SPA) และแนะนำให้ใช้ build สำหรับ production เสมอเพื่อประสิทธิภาพสูงสุด

สำรวจฟีเจอร์ Custom UI ใน Logto Console

เริ่มต้นด้วยโปรเจกต์ทางการ

วิธีที่เร็วที่สุดในการเริ่มต้น UI ลงชื่อเข้าใช้แบบกำหนดเอง คือการโคลน Logto experience project นี่คือ UI ประสบการณ์การลงชื่อเข้าใช้ของ Logto ที่ครอบคลุมทุกฟีเจอร์และแนวปฏิบัติที่ดีที่สุดของ Logto คุณสามารถปรับแต่งให้เหมาะกับความต้องการของคุณได้

หลังจากตรวจสอบโค้ดแล้ว ให้รันคำสั่งต่อไปนี้เพื่อ build โปรเจกต์:

pnpm install && pnpm build
บันทึก:

ทั้งโปรเจกต์ Logto เป็น pnpm monorepo หากคุณต้องการรันแพ็กเกจ experience แบบ standalone (โดยไม่ใช้ pnpm) ให้แทนที่ workspace: dependencies ใน package.json ด้วยหมายเลขเวอร์ชันที่ระบุ (เช่น ^1.0.0)

หลังจาก build เสร็จสิ้น คุณจะพบไฟล์ที่คอมไพล์แล้วทั้งหมดในไดเรกทอรี dist จากนั้นสร้างไฟล์ ZIP ของไดเรกทอรี dist - ไฟล์นี้จะถูกใช้สำหรับอัปโหลดไปยัง Logto Cloud ในขั้นตอนถัดไป

ข้อกำหนดของไฟล์ Custom UI

ก่อนอัปโหลดไฟล์ UI ของคุณ โปรดตรวจสอบให้แน่ใจว่าเป็นไปตามข้อกำหนดดังต่อไปนี้:

  • ไฟล์ที่อัปโหลดควรถูกบรรจุเป็นไฟล์ zip เดียว
  • ไฟล์ zip ต้องมีไฟล์ index.html อยู่ในไดเรกทอรีราก
  • ไฟล์ zip ต้องมีขนาดไม่เกิน 20MB
  • ไฟล์ zip ต้องไม่มีไฟล์ใดที่มีขนาดเกิน 10MB
  • ไฟล์ zip ต้องมีจำนวนไฟล์รวมไม่เกิน 200 ไฟล์

อัปโหลดไฟล์ Custom UI ของคุณ

บันทึก:

โปรดใช้ความระมัดระวังเมื่อใช้ฟีเจอร์นี้ใน production เพราะจะมีผลกับประสบการณ์การลงชื่อเข้าใช้ของผู้ใช้ทันที

  1. ไปที่ Console > ประสบการณ์การลงชื่อเข้าใช้ > การตั้งค่าแบรนด์ > นำ UI ของคุณมาใช้
  2. คลิกเพื่อเลือกหรือ drag and drop ไฟล์ zip ที่คุณสร้างไว้ในขั้นตอนก่อนหน้า ระบบจะเริ่มอัปโหลดโดยอัตโนมัติ
  3. เมื่ออัปโหลดเสร็จแล้ว ให้บันทึกการเปลี่ยนแปลง UI ของคุณจะถูกนำมาใช้ทันที
  4. หน้าต่าง "Sign-in preview" จะถูกปิดใช้งานเมื่อคุณใช้ UI ลงชื่อเข้าใช้แบบกำหนดเอง อย่างไรก็ตาม คุณยังสามารถคลิกปุ่ม "Live preview" เพื่อทดสอบหน้าลงชื่อเข้าใช้ของคุณในแท็บเบราว์เซอร์ใหม่ได้

พัฒนา UI ของคุณเอง

โต้ตอบกับ Experience API

UI ของคุณจำเป็นต้องโต้ตอบกับ Experience API เพื่อดำเนินการต่าง ๆ เช่น ลงชื่อเข้าใช้ ลงทะเบียนผู้ใช้ รีเซ็ตรหัสผ่าน ผูกบัญชีโซเชียล เปิดใช้งาน MFA และอื่น ๆ เพื่อเข้าใจ flow ของผู้ใช้และรายละเอียดการใช้งาน แนะนำให้ศึกษาจาก Experience API design RFC ซึ่งมีรายละเอียดทางเทคนิคและตัวอย่างอย่างครบถ้วน

คุณยังจำเป็นต้องเข้าถึงการตั้งค่าประสบการณ์การลงชื่อเข้าใช้อื่น ๆ เช่น สีแบรนด์ โลโก้บริษัท favicon นโยบายรหัสผ่าน ข้อความภาษาท้องถิ่น หรือแม้แต่ custom CSS ผ่าน sign-in Experience API endpoint

โปรเจกต์ตัวอย่าง

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

นอกจากนี้ เรายังจะพัฒนาโปรเจกต์ตัวอย่างที่ง่ายขึ้นและเน้นตามสถานการณ์การใช้งานจริง เพื่อครอบคลุม use case ที่พบบ่อย โปรดติดตามอัปเดตในอนาคต!

การพัฒนาและดีบักแบบ local

สำหรับการพัฒนาและดีบักแบบ local เรามีเครื่องมือ Logto Tunnel CLI เพื่อ:

  • Proxy คำขอ Experience API จากเครื่องของคุณไปยัง Logto Cloud endpoint
  • ทดสอบการทำงานของ UI แบบกำหนดเองในเครื่อง

สิ่งนี้ช่วยให้คุณทดสอบและดีบัก UI ได้ในเครื่องก่อนอัปโหลดขึ้น Logto Cloud

โปรดดูรายละเอียดที่ Debug และทดสอบ UI ของคุณในเครื่อง

อัปโหลดไฟล์ Custom UI ด้วย CLI

นอกจากการอัปโหลดผ่าน Console แล้ว คุณยังสามารถใช้ Logto CLI เพื่ออัปโหลดไฟล์ UI แบบกำหนดเองได้ด้วย วิธีนี้เหมาะสำหรับ workflow การ deploy แบบอัตโนมัติ

โปรดดูรายละเอียดที่ อัปโหลดไฟล์ Custom UI ด้วย CLI

กู้คืนประสบการณ์การลงชื่อเข้าใช้แบบดั้งเดิมของ Logto

หากคุณต้องการกลับไปใช้ประสบการณ์การลงชื่อเข้าใช้แบบดั้งเดิมของ Logto เพียงคลิกปุ่มลบบนการ์ด “นำ UI ของคุณมาใช้” หลังจากบันทึกการเปลี่ยนแปลง UI จะกลับไปเป็นค่าเริ่มต้นของ Logto

RFCS: Experience API

ตัวอย่าง Experience

นำ UI ลงชื่อเข้าใช้ของคุณมาใช้กับ Logto Cloud