อยากทำระบบ “Login with Google” ให้เว็บแอปตัวเอง ต้องเริ่มจากตรงไหน

หลายคนที่เขียนเว็บแอปพลิเคชัน ไม่ว่าจะเป็นระบบหลังบ้านด้วย PHP หรือระบบอัตโนมัติผ่าน Google Apps Script แล้วอยากเพิ่มปุ่ม “เข้าสู่ระบบด้วย Google” เพื่อความสะดวกและปลอดภัย สิ่งแรกที่ต้องมีเลยคือ Client ID และ Client Secret ค่ะ

วันนี้สรุปขั้นตอนการเข้าไปสร้าง Google OAuth Client แบบละเอียดจับมือทำมาฝากกันค่ะ ทำตามนี้ทีละสเต็ปได้เลย 👇

1️⃣ สร้างโปรเจกต์ใน Google Cloud Console

  • ไปที่เว็บไซต์ Google Cloud Console
  • กดที่เมนู Dropdown มุมซ้ายบน (ข้างโลโก้)
  • เลือก New Project ตั้งชื่อโปรเจกต์ให้สอดคล้องกับเว็บแอปของเรา แล้วกด Create

2️⃣ ตั้งค่าหน้าจอขอสิทธิ์ (OAuth Consent Screen)

  • ไปที่เมนูด้านซ้าย เลือก APIs & Services > OAuth consent screen
  • เลือกประเภทผู้ใช้งาน (User Type): 👉 Internal: สำหรับให้คนในองค์กรใช้ (เช่น ใช้อีเมล @โรงเรียน เข้าใช้งานเท่านั้น) 👉 External: สำหรับผู้ใช้บัญชี Google ทั่วไป (@gmail.com)
  • กด Create แล้วกรอกข้อมูลที่จำเป็น เช่น App name, User support email และ Developer contact information
  • กด Save and Continue ไปเรื่อยๆ จนจบขั้นตอน (หน้า Scopes ข้ามไปก่อนได้ค่ะ)

3️⃣ สร้าง OAuth Client ID

  • ไปที่เมนู Credentials ด้านซ้ายมือ
  • คลิก + CREATE CREDENTIALS (ด้านบน) แล้วเลือก OAuth client ID
  • ตรง Application type ให้เลือกเป็น Web application
  • ตั้งชื่อ Client ตามต้องการ

4️⃣ กำหนด URL สำหรับเชื่อมต่อ (จุดนี้สำคัญมาก! ⭐) ต้องใส่ URL ให้ตรงกับที่เราใช้พัฒนาเว็บอยู่ ไม่งั้นระบบจะแจ้ง Error 400 (redirect_uri_mismatch) ค่ะ:

  • Authorized JavaScript origins (โดเมนของเว็บเรา): 👉 ตอนรันทดสอบบนเครื่อง (เช่น ใช้ MAMP): ใส่ http://localhost 👉 ตอนเอาขึ้นเว็บจริง: ใส่โดเมนจริง เช่น [https://krudevtech.com]
  • Authorized redirect URIs (ลิงก์ที่ Google จะส่งข้อมูลกลับมาให้หลังล็อกอินสำเร็จ): 👉 งาน PHP: http://localhost/callback.php 👉 งาน Google Apps Script: [https://script.google.com/macros/d/YOUR_SCRIPT_ID/usercallback]
  • เสร็จแล้วคลิก Create

5️⃣ เก็บคีย์ไว้ใช้งาน

  • ระบบจะเด้งหน้าต่าง Pop-up สรุปข้อมูลมาให้
  • ให้เราคัดลอก Client ID และ Client Secret เก็บไว้ให้ดี เพื่อนำไปใส่ในโค้ดฝั่ง Backend ต่อไป (ห้ามเอาไปแปะให้เห็นโต้งๆ ในไฟล์ HTML เด็ดขาดนะคะ!)

Scroll to Top