安装
npx @insforge/cli secrets get ANON_KEY, or in the dashboard: click Install and open API Keys.
signUp()
使用电子邮件和密码创建新用户帐户。参数
email(string, required) - 用户的电子邮件地址password(string, required) - 用户的密码name(string, optional) - 用户的显示名称redirectTo(string, optional) - 用于基于链接的电子邮件验证。电子邮件链接始终首先打开 InsForge 后端端点;在验证令牌后,InsForge 将浏览器重定向到此 URL 以获取验证结果。当verifyEmailMethod设置为link时需要。此 URL 必须包含在allowedRedirectUrls中。推荐:使用您的应用登录页面。
返回
当
requireEmailVerification 为真时,accessToken 将为空直到用户验证其电子邮件。InsForge 发送一个验证电子邮件,其中包含一个链接或 6 位数字代码,具体取决于您的仪表板配置(verifyEmailMethod)。对于代码验证,实现一个提示用户输入代码的页面(见 verifyEmail())。对于链接验证,提供一个在 InsForge 验证令牌后应接收浏览器的 redirectTo URL。推荐:使用您的登录页面作为 redirectTo,然后显示成功消息并询问用户使用其电子邮件和密码登录。示例
输出
signInWithPassword()
使用电子邮件和密码登录现有用户。参数
email(string, required) - 用户的电子邮件地址password(string, required) - 用户的密码
返回
示例
输出
signInWithOAuth()
使用已配置的提供商(内置提供商如 Google/GitHub,以及从仪表板配置的任何自定义提供商密钥)启动 OAuth 身份验证流程。参数
provider(string, required) - OAuth 提供商密钥(如google、github或自定义提供商密钥如okta-company)redirectTo(string, required) - 身份验证后要重定向的 URLadditionalParams(Record<string, string>, optional) - 提供商特定的 OAuth 提示,如 Google 的prompt=select_accountskipBrowserRedirect(boolean, optional) - 如果为 true,返回 OAuth URL 而不自动重定向(用于服务器渲染或移动流程)
返回
OAuth 重定向后,SDK 自动检测回调
insforge_code,将其交换为会话,并自动保存会话。示例
additionalParams 仅用于提供商特定的可选提示。不要传递服务器拥有的 OAuth 字段如 client_id、redirect_uri、code_challenge、state、response_type 或 scope;InsForge 在服务器上设置这些值并忽略冲突的客户端提供的密钥。自定义提供商必须首先在 InsForge 仪表板的
Auth Methods 中使用客户端凭证和 OIDC 发现 URL 配置。输出
signOut()
登出当前用户并清除会话。参数
无返回
示例
输出
getCurrentUser()
获取当前登录的用户。 对于浏览器应用,在启动期间调用auth.getCurrentUser()。如果存在有效的 httpOnly 刷新 cookie,SDK 将在返回用户之前自动刷新会话。
对于服务器模式,当您需要刷新过期的访问令牌时,显式调用 refreshSession({ refreshToken })。
参数
无返回
示例
输出
getProfile()
通过 ID 获取任何用户的公开个人资料。返回一个顶级包含所有字段的平面个人资料对象。参数
userId(string, required) - 要获取个人资料的用户 ID
返回
示例
输出
setProfile()
更新当前用户在用户表中的个人资料。支持任何动态字段并返回更新的个人资料作为平面对象。参数
profile(object) - 要更新的个人资料字段的键值映射。接受任何字段。
name(predefined, string) - 用户的显示名称avatar_url(predefined, string) - 个人资料图片 URL
返回
示例
输出
resendVerificationEmail()
当之前的 OTP 已过期或未收到时,重新发送电子邮件验证。使用身份验证设置中配置的方法(verifyEmailMethod)。当方法为 code 时,发送 6 位数字代码。当方法为 link 时,发送通过 InsForge 后端端点的浏览器验证链接。
此端点通过即使电子邮件不存在也返回成功来防止用户枚举。
参数
email(string, required) - 用户的电子邮件地址redirectTo(string, optional) - 用于基于链接的电子邮件验证。电子邮件链接始终首先打开 InsForge 后端端点;在验证令牌后,InsForge 将浏览器重定向到此 URL 以获取验证结果。当verifyEmailMethod设置为link时需要。此 URL 必须包含在allowedRedirectUrls中。推荐:使用您的应用登录页面。
返回
示例
输出
verifyEmail()
使用 6 位数字代码验证电子邮件地址。 对于基于链接的验证,用户应点击电子邮件链接,在浏览器中打开GET /api/auth/email/verify-link。
成功验证的使用此代码端点的用户将收到会话令牌。
对于基于链接的验证,您的前端应按如下方式处理浏览器重定向:
- 成功:
?insforge_status=success&insforge_type=verify_email - 错误:
?insforge_status=error&insforge_type=verify_email&insforge_error=... insforge_status:浏览器链接流的结果。对于验证,值为success或error。insforge_type:流标识符。对于验证链接,这始终是verify_email。insforge_error:仅当insforge_status=error时存在。人类可读的错误消息用于显示或日志。
redirectTo。当 insforge_status=success 时,显示确认消息并询问用户使用其电子邮件和密码登录。
参数
email(string, required) - 用户的电子邮件地址otp(string, required) - 6 位数字验证代码
返回
示例
输出
sendResetPasswordEmail()
使用身份验证设置中配置的方法(resetPasswordMethod)发送密码重置电子邮件。当方法为 code 时,发送 6 位数字代码用于两步流程。当方法为 link 时,发送通过 InsForge 后端端点的浏览器重置链接。
此端点通过即使电子邮件不存在也返回成功来防止用户枚举。
参数
email(string, required) - 用户的电子邮件地址redirectTo(string, optional) - 用于基于链接的密码重置。电子邮件链接始终首先打开 InsForge 后端端点;InsForge 然后将浏览器重定向到此 URL,在查询字符串中包含重置token,以便您的应用可以呈现其自己的重置密码页面。当resetPasswordMethod设置为link时需要。此 URL 必须包含在allowedRedirectUrls中。推荐:使用您的应用的专用重置密码页面。
返回
示例
输出
exchangeResetPasswordToken()
将 6 位数字重置密码代码交换为重置令牌。这是两步密码重置流程的第 1 步(仅在resetPasswordMethod 为 code 时使用)。
当
resetPasswordMethod 为 link 时不使用此端点,因为浏览器重置链接流直接使用电子邮件链接令牌。参数
email(string, required) - 用户的电子邮件地址code(string, required) - 电子邮件中的 6 位数字代码
返回
示例
输出
resetPassword()
使用令牌重置用户密码。令牌可以是:- 魔法链接令牌:在
sendResetPasswordEmail的重置页面 URL 中提供,当方法为link时 - 重置令牌:来自
exchangeResetPasswordToken,在代码验证后,当方法为code时
参数
newPassword(string, required) - 用户的新密码otp(string, required) - 重置令牌或魔法链接令牌
- 准备重置:
?token=...&insforge_status=ready&insforge_type=reset_password - 错误:
?insforge_status=error&insforge_type=reset_password&insforge_error=... token:仅当insforge_status=ready时存在。将此值传递给resetPassword({ otp })。insforge_status:浏览器链接流的结果。对于重置链接,值为ready或error。insforge_type:流标识符。对于重置链接,这始终是reset_password。insforge_error:仅当insforge_status=error时存在。人类可读的错误消息用于显示或日志。
insforge_status=ready 且 token 存在时才呈现重置密码表单。