[英]When I try to run a Post User Registration script in Auth0 it gives "Error! API Error. Please contact support if the problem persists" error
我正在嘗試使用 Auth0 的操作進行用戶注冊。 當我嘗試通過 UI 對其進行測試時,它給了我一個錯誤,例如“錯誤!API 錯誤。如果問題仍然存在,請聯系支持人員”,並且在控制台中它只寫“錯誤:{}”。 我為此操作編寫的腳本如下所示:
const https = require('https');
const jsonwebtoken = require('jsonwebtoken');
/**
* @param {Event} event - Details about registration event.
*/
exports.onExecutePostUserRegistration = async (event) => {
const TOKEN_SIGNING_KEY = event.secrets.signingKey
const TOKEN_EXPIRATION_IN_SECONDS = 10
const payload = {
email: event.user.email,
name: event.user.given_name,
surname: event.user.family_name
};
const token = jsonwebtoken.sign(payload, TOKEN_SIGNING_KEY,
{ subject: "postUserRegistration",
expiresIn: TOKEN_EXPIRATION_IN_SECONDS });
console.log("Starting post user registration operations for user with email: ", payload.email);
return new Promise((resolve, reject) => {
const request = https.request(url, options,
(res) => {
if (res.statusCode === 200) {
resolve({statusCode: res.statusCode, headers: res.headers})
} else {
reject({
headers: res.headers,
statusCode: res.statusCode
})
}
res.on('error', reject);
});
request.on("error", function (e) {
console.error(e);
reject({message: {e}});
});
request.on("timeout", function () {
reject({message: "request timeout"});
})
request.end();
});
}
你能幫我看看究竟是什么導致了這個問題嗎?
為了理解這個問題,我嘗試將 Promise 分配給一個變量,然后查看它返回的內容。 有趣的部分是它“待定”。 它不能以任何方式“待定”,因為一切都是真的,它將被“解決”,否則“被拒絕”,如果請求出現超時/錯誤,它將被“拒絕”。
事實證明,Auth0 對操作有一些限制,並且調用的端點被卡在了我們的防火牆上,這導致 Auth0 在 HTTPS 超時之前超時。 由於請求中途中斷,它一直處於“待處理”狀態。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.