Skip to content
HUAJAIITHUAJAIIT
  • Home
  • Services
    • UX/UI Design
    • Website Development
    • Program Development
  • Work
  • Team
  • Blog
  • Contact
Programer Blog

ทำ LOGIN ง่ายๆ ภายใน 30 นาที

Posted on October 24, 2021January 20, 2023 by huajaiit
รับเขียนโปรแกรม
24
Oct

ทำ LOGIN ง่ายๆ ภายใน 30 นาที


 

เมื่อ EP ที่แล้วม่อนได้สอนการติดตั้ง Nuxt JS ไป

รอบนี้ม่อนจะมาแนะนำระบบที่เว็บแอพพลิเคชั่นส่วนใหญ่ก็มี นั้นก็คือระบบ Login  ฟังดูแล้วอาจจะเป็นระบบง่ายๆ ใช่ครับมันง่ายมาก แต่ผมจะมา แนะนำให้ทำง่ายขึ้นกว่าเดิมเข้าไปอีก มาเริ่มกันเลยครับ เปิดโปคขึ้นมาเลยครับ

อันดับแรกเรามาเตรียม UI สำหรับหน้า Login กันก่อน

ส่วนประกอบของหน้า Login เพื่อนๆพอจะเดากันได้มั๊ยครับว่าหน้า Login ควรจะประกอบไปด้วยอะไรบ้าง  ….ถูกต้องนะครับ

หน้า Login ส่วนใหญ่จะประกอบไปด้วย

  1. input สำหรับกรอก username

  2. input สำหรับกรอก password

  3. ปุ่ม submit สำหรับการส่งข้อมุลไปยัง Server ของเรา

ตัวอย่างตามรูปด้านล่างเลยนะครับ

เมื่อเราเตรียม UI เรียบร้อย ต่อมาเราจะมาติดตั้ง Dependency กัน โดยหลักๆที่เราจะใช้ในการทำ ระบบ Login มีอยู่ 2 ตัว นั้นก็คือ nuxt/axios กับ nuxt/auth

คำสั่งที่ใช้ติดตั้งมีดังนี้

  • yarn add install @nuxtjs/auth @nuxtjs/axios

เมื่อเราติดตั้ง Dependencies ของเราเรียบร้อยก็ให้ทำการเรียกใช้ 

โดยไปที่ไฟล์ nuxt.config.js และ ใส่โค๊ดตามตัวอย่างด้านซ้าย ไว้ในส่วนของ Modules

สร้าง API สำหรับ การ login

ให้เพื่อนๆติดตั้ง Dependencies เพิ่มเติม

  • yarn add cors express body-parser

จากนั้น สร้าง Folder api และ ไฟล์ index.js ไว้ใน Folder

และใส่ Code ตามตัวอย่างด้านซ้าย

กลับมาที่ ไฟล์ nuxt.config.js

เพื่อทำ Config ที่เราจะใช้ในการ login

โดยที่ในส่วน ของ axios จะเป็นตัวเรียก api

และ auth จะเป็นตัวจัดการระบบ login

กลับมายัง Form login ของเรา

ให้สร้าง method ที่ชื่อว่า OnSubmit เพื่อสั่งให้ส่งข่อมูลไปยัง api ของเราเพื่อทำการ login

โดยคำสั่งที่ใช้คือ

this.$auth.loginWith(“local”,{data:this.form})

เมื่อใช้คือจะเป็นเรียก endpoint login ที่เรา config ไว้ใน nuxt.config.js

และเมื่อ login เรียบร้อย ให้ redirect ไปยังหน้า Profile

ทำหน้า Profile สำหรับรอการ Login

จาก Code ตัวอย่างด้านซ้าย เพื่อนๆจะเห็นว่ามีส่วนที่เป็น middleware ซึ่งในส่วนนี้จะทำการตรวจสอบการที่จะเข้ามาหน้านี้ ว่ามีการ authen หรือ login เข้ามาหรือยัง หากยังระบบจะ redirect ไปยังหน้า login โดยอัตโนมัติ

อธิบายคำสั่งเพิ่มเติม

this.$auth.user คือ เรียก endpoint user ที่เรา config ไว้ให้ทำงาน

this.$auth.logout() คือ สั่งให้ทำการออกจากระบบ และให้กลับไปยังหน้า login

 

เสร็จเรียบร้อย

เพื่อนลองนำไปใช้ดูนะครับ ความสวยงามอยู่ที่เพื่อนๆทุกคนนะครับ ขอบคุณครับ

ติดต่อ-สอบถาม
รับเขียนโปรแกรม สร้างโปรเจค NUXT JS
สร้าง LINE LOGIN CHANNAL
Latest Posts
  • 22
    Feb
    How to วางกลยุทธ์ SEO สำหรับเว็บไซต์น้องใหม่ Comments Off on How to วางกลยุทธ์ SEO สำหรับเว็บไซต์น้องใหม่
  • 14
    Feb
    10 สิ่งที่ Landing Page ควรมีเพื่อการใช้งานที่ดีขึ้น Comments Off on 10 สิ่งที่ Landing Page ควรมีเพื่อการใช้งานที่ดีขึ้น
  • 06
    Feb
    เปิดตัว WordPress 6.0 ยกระดับประสบการณ์สร้างเว็บไซต์ Comments Off on เปิดตัว WordPress 6.0 ยกระดับประสบการณ์สร้างเว็บไซต์
  • 31
    Jan
    Core Web Vitals วิธีดัน SEO ให้เว็บไซต์ติดหน้าแรก Comments Off on Core Web Vitals วิธีดัน SEO ให้เว็บไซต์ติดหน้าแรก
  • 31
    Jan
    หน้าเว็บโหลดช้ามีผลต่อ SEO อย่างไร พร้อมบอกวิธีแก้ Comments Off on หน้าเว็บโหลดช้ามีผลต่อ SEO อย่างไร พร้อมบอกวิธีแก้
Recent Comments
    Tag Cloud
    Code G0 101 GO 101 Golang Google Search Console Installing mongoDB Plugin SEO Variables web WordPress ทำ LOGIN ธุรกิจ ปลั๊กอิน รับทำเว็บไซต์ รับพัฒนาโปรแกรม รับเขียนโปรแกรม สร้าง LINE LOGIN สร้างโปรเจค สร้างไฟล์ hello.go เว็บไซต์
    Categories
    • IT Blog (52)
    • Programer Blog (16)
    Archives
    • February 2023 (3)
    • January 2023 (15)
    • December 2022 (5)
    • November 2022 (6)
    • October 2022 (3)
    • September 2022 (5)
    • August 2022 (4)
    • July 2022 (4)
    • June 2022 (7)
    • May 2022 (5)
    • April 2022 (3)
    • March 2022 (1)
    • October 2021 (5)
    social
    contact

    Head office ::
    119/46 ต.ไทรม้า อ.เมือง จ.นนทบุรี 11000

    Research and Develop ::
    559/36 หมู่ 6 ตำบลสันทราย อำเภอเมืองเชียงราย 57000

    รับทำเว็บไซต์ รับเขียนโปรแกรม
    • Home
    • Services
      • UX/UI Design
      • Website Development
      • Program Development
    • Work
    • Team
    • Blog
    • Contact