ควรเรียกใช้เมธอดนี้หรือเมธอดการตรวจสอบสิทธิ์อื่นก่อน ee.initialize()
โปรดทราบว่าหากผู้ใช้ไม่เคยให้สิทธิ์เข้าถึงแอปพลิเคชันที่ระบุโดยรหัสไคลเอ็นต์มาก่อน โดยค่าเริ่มต้น ระบบจะพยายามแสดงหน้าต่างกล่องโต้ตอบที่แจ้งให้ผู้ใช้ให้สิทธิ์ที่จำเป็น อย่างไรก็ตาม เบราว์เซอร์อาจบล็อกป๊อปอัปนี้ได้ หากต้องการหลีกเลี่ยงปัญหานี้ ให้ระบุการเรียกกลับ opt_onImmediateFailed และแสดงปุ่มเข้าสู่ระบบในหน้าเว็บในการเรียกกลับนั้น จากนั้นเรียก ee.data.authenticateViaPopup() จากตัวแฮนเดิลเหตุการณ์คลิกของปุ่มนี้ การดำเนินการนี้จะทำให้เบราว์เซอร์ไม่บล็อกป๊อปอัป เนื่องจากตอนนี้ป๊อปอัปเป็นผลโดยตรงจากการกระทำของผู้ใช้
ระบบจะรีเฟรชโทเค็นการให้สิทธิ์โดยอัตโนมัติเมื่อเป็นไปได้ คุณสามารถมั่นใจได้ว่าระบบจะส่งการเรียกแบบไม่พร้อมกันทั้งหมดพร้อมกับข้อมูลเข้าสู่ระบบที่เหมาะสม อย่างไรก็ตาม สำหรับการเรียกแบบซิงโครนัส คุณควรตรวจสอบโทเค็นการให้สิทธิ์ด้วย ee.data.getAuthToken() และเรียกใช้ ee.data.refreshAuthToken() ด้วยตนเองหากไม่มี การดำเนินการรีเฟรชโทเค็นเป็นแบบอะซิงโครนัส และไม่สามารถดำเนินการเบื้องหลังตามความต้องการก่อนการเรียกแบบซิงโครนัสได้
การใช้งาน | การคืนสินค้า |
---|---|
ee.data.authenticateViaOauth(clientId, success, error, extraScopes, onImmediateFailed, suppressDefaultScopes) |
อาร์กิวเมนต์ | ประเภท | รายละเอียด |
---|---|---|
clientId | สตริง | รหัสไคลเอ็นต์ OAuth ของแอปพลิเคชัน หรือ null เพื่อปิดใช้การเรียกที่ผ่านการตรวจสอบสิทธิ์ ซึ่งรับได้ผ่าน Google Developers Console โปรเจ็กต์ต้องมีต้นทาง JavaScript ที่สอดคล้องกับโดเมนที่สคริปต์ทำงานอยู่ |
success | ฟังก์ชัน | ฟังก์ชันที่จะเรียกใช้หากการตรวจสอบสิทธิ์สำเร็จ |
error | ฟังก์ชัน (ไม่บังคับ) | ฟังก์ชันที่จะเรียกใช้หากการตรวจสอบสิทธิ์ไม่สำเร็จ โดยส่งข้อความแสดงข้อผิดพลาด หากการตรวจสอบสิทธิ์ในโหมด immediate (เบื้องหลัง) ล้มเหลวและมีการระบุ opt_onImmediateFailed ระบบจะเรียกใช้ฟังก์ชันดังกล่าวแทน opt_error |
extraScopes | List<String> ไม่บังคับ | ขอบเขต OAuth เพิ่มเติมที่จะขอ |
onImmediateFailed | ฟังก์ชัน (ไม่บังคับ) | ฟังก์ชันที่จะเรียกใช้หากการตรวจสอบสิทธิ์เบื้องหลังอัตโนมัติล้มเหลว ค่าเริ่มต้นคือ ee.data.authenticateViaPopup() ซึ่งเชื่อมโยงกับฟังก์ชันเรียกกลับที่ส่งมา |
suppressDefaultScopes | บูลีน ไม่บังคับ | เมื่อเป็นจริง ระบบจะขอเฉพาะขอบเขตที่ระบุใน opt_extraScopes เท่านั้น และจะไม่ขอขอบเขตเริ่มต้น เว้นแต่จะระบุอย่างชัดเจนใน opt_extraScopes |