[英]Firebase Functions: no custom claims in user object in functions.auth.user().onCreate(user=>{})
我認為使用 auth.user().onCreate(user=>{}) 時存在錯誤,因為我為新用戶創建了自定義令牌,而不是現有令牌,我使用了隨機字符串生成器(nanoid)來生成一個唯一的 id,並為登錄制作自定義令牌,並帶有一些聲明! 我可以清楚地看到 JWT 有效負載下的聲明 如果我調試 jwt 令牌,但是當我使用 jwt 令牌(自定義令牌)注冊一個已經不存在的用戶時,它會創建一個提供程序 ID 為“自定義”的新用戶,但是問題出在 auth.user() .onCreate(user=>{}) 函數中,user.customClaims 為空,即使我在創建 jwt 時提供了自定義聲明並驗證確實存在自定義聲明。 是它本來的樣子還是我發現了一個錯誤?
這是我的代碼(函數)-
exports.sayHello = functions
.runWith({
memory: "256MB",
timeoutSeconds: 12
})
.region("asia-south1")
.auth.user()
.onCreate(async (user) => {
console.log(user.customClaims); // this is null always despite the jwt having claims
});
我應該閱讀文檔,我浪費了這么多天調試!
答案是它根本不會觸發該功能,因為它不會在使用自定義令牌創建帳戶時觸發 - 參考
當用戶首次使用自定義令牌登錄時,不會觸發 Cloud Functions 事件。
但是當我在模擬器上調試時,當使用自定義令牌創建帳戶時會觸發功能,我猜在 firebase 的開發人員和文檔作者之間存在很大的脫節!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.