我正在尝试开发一个密码重置网页,以用于MongoDB Stitch的电子邮件/密码身份验证,这是我的代码:
<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<!-- Stitch JavaScript SDK -->
<!-- Base Stitch Browser SDK -->
<script src="https://s3.amazonaws.com/stitch-sdks/js/bundles/4.0.0/stitch.js"></script>
<script>// Parse the URL query parameters
const url = window.location.search;
const params = new URLSearchParams(url);
const token = params.get('token');
const tokenId = params.get('tokenId');
const newPassword = "test";
// Confirm the user's email/password account
const emailPassClient = Stitch.defaultAppClient.auth
.getProviderClient(UserPasswordAuthProviderClient.factory);
emailPassClient.resetPassword(token, tokenId, newPassword).then(() => {
console.log("Successfully reset password!");
}).catch(err => {
console.log("Error resetting password:", err);
});
</script>
</body>
</html>
我收到如下错误:
Uncaught ReferenceError: Stitch is not defined
也许我输入的针迹束不正确?
答案 0 :(得分:0)
调用stitch.Stitch.initializeDefaultAppClient(ID)
请注意,您必须初始化默认的应用程序客户端,不能只调用stitch.Stitch.defaultappClient
答案 1 :(得分:0)
const client = stitch.Stitch.initializeDefaultAppClient('<<app-id>>');
var emailClient = client.auth.getProviderClient(window.stitch.UserPasswordAuthProviderClient.factory);
emailPassClient.resetPassword(token, tokenId, newPassword).then(() => {
console.log("Successfully reset password!");
}).catch(err => {
console.log("Error resetting password:", err);
});