คุณสามารถทริกเกอร์ฟังก์ชันเพื่อตอบสนองต่อการสร้างและการลบบัญชีผู้ใช้Firebaseได้ ตัวอย่างเช่น คุณสามารถส่งอีเมลต้อนรับถึง ผู้ใช้ที่เพิ่งสร้างบัญชีในแอปของคุณ ตัวอย่างในหน้านี้คือ โดยอ้างอิงจากตัวอย่างที่ตรงกับความต้องการ ซึ่งก็คืออีเมลต้อนรับและกล่าวลา เมื่อมีการสร้างและลบบัญชี
ดูตัวอย่างกรณีการใช้งานเพิ่มเติมได้ที่ ฉันจะใช้ Cloud Functions ทำอะไรได้บ้าง
ทริกเกอร์ฟังก์ชันในการสร้างผู้ใช้
คุณสามารถสร้างฟังก์ชันที่จะทริกเกอร์เมื่อมีการสร้างผู้ใช้ Firebase โดยใช้ตัวแฮนเดิลเหตุการณ์ functions.auth.user().onCreate()
ดังนี้
exports.sendWelcomeEmail = functions.auth.user().onCreate((user) => { // ... });
บัญชี Firebase จะทริกเกอร์เหตุการณ์การสร้างผู้ใช้สำหรับ Cloud Functions ในกรณีต่อไปนี้
- ผู้ใช้สร้างบัญชีอีเมลและรหัสผ่าน
- ผู้ใช้ลงชื่อเข้าใช้เป็นครั้งแรกโดยใช้ผู้ให้บริการข้อมูลประจำตัวภายนอก
- นักพัฒนาแอปสร้างบัญชีโดยใช้ Admin SDK
- ผู้ใช้ลงชื่อเข้าใช้เซสชันการตรวจสอบสิทธิ์แบบไม่ระบุตัวตนใหม่เป็นครั้งแรก
เหตุการณ์ Cloud Functions จะไม่ทริกเกอร์เมื่อผู้ใช้ลงชื่อเข้าใช้เป็นครั้งแรกโดยใช้โทเค็นที่กําหนดเอง
เข้าถึงแอตทริบิวต์ผู้ใช้
จากข้อมูลผู้ใช้ที่ส่งไปยังฟังก์ชันของคุณ คุณจะทำสิ่งต่อไปนี้ได้
เข้าถึงรายการแอตทริบิวต์ผู้ใช้ที่มีอยู่ใน
UserRecord
ออบเจ็กต์ เช่น คุณจะได้รับอีเมลและชื่อที่แสดงของผู้ใช้ ดังนี้
const email = user.email; // The email of the user. const displayName = user.displayName; // The display name of the user.
ทริกเกอร์ฟังก์ชันเมื่อลบผู้ใช้
คุณสามารถตอบสนองต่อเหตุการณ์การลบผู้ใช้ได้เช่นเดียวกับการทริกเกอร์ฟังก์ชันในการสร้างผู้ใช้ ใช้เมนู
functions.auth.user().onDelete()
เครื่องจัดการเหตุการณ์ตามที่แสดง
exports.sendByeEmail = functions.auth.user().onDelete((user) => { // ... });
ฟังก์ชันการบล็อกทริกเกอร์
หากอัปเกรดเป็น Firebase Authentication with Identity Platform คุณจะขยายFirebase Authenticationได้โดยใช้การบล็อก Cloud Functions
ฟังก์ชันการบล็อกช่วยให้คุณสามารถเรียกใช้โค้ดที่กำหนดเองซึ่งจะแก้ไขผลลัพธ์ของ ผู้ใช้ที่ลงทะเบียนหรือลงชื่อเข้าใช้แอปของคุณ ตัวอย่างเช่น คุณสามารถป้องกันไม่ให้ผู้ใช้ ไม่ให้ตรวจสอบสิทธิ์ในกรณีที่ผู้ใช้ไม่ตรงตามเกณฑ์ที่กำหนด หรืออัปเดต ก่อนส่งคืนไปยังแอปไคลเอ็นต์