Supertokens - 通过用户邮箱获取用户ID
Supertokens - get userid by user email
使用 supertokens(托管),是否有直接的方法通过电子邮件查询另一个用户的 userId?我找到的唯一解决方案是获取所有用户并搜索它,这显然效率不高。
根据您使用的配方和 SDK,有相应的功能可用。例如,对于 NodeJS SDK,您有:
电子邮件密码配方
第三方配方
getUsersByEmail
(请注意,这将 return 一组用户,因为您可以让多个用户使用同一电子邮件注册,但使用不同的 OAuth 提供商)
无密码食谱
getUserByEmail
(如果用户不存在,此功能将return Promise<undefined>
,如果他们使用phone号码注册)
第三方邮箱密码
第三方无密码
其他SDK
其他后端SDK,可以查看他们的文档:
Python SDK -> 选择你的食谱 -> 选择 asyncio
或 syncio
模块(取决于你的网络框架执行环境)然后你会看到该配方公开的功能列表。其中之一将允许您从他们的电子邮件中获取用户。
Golang SDK -> 点击“recipe”项,选择你的recipe,你会看到该recipe公开的函数列表。其中之一将允许您从他们的电子邮件中获取用户。
直接使用 SuperTokens 核心 API
在 API Spec 中,您可以看到每个食谱的部分。根据用户的注册方式,您可以使用他们的电子邮件作为查询参数来查询 /recipe/user
GET API。请务必在 GET 请求中传入正确的 rid
header。
使用 supertokens(托管),是否有直接的方法通过电子邮件查询另一个用户的 userId?我找到的唯一解决方案是获取所有用户并搜索它,这显然效率不高。
根据您使用的配方和 SDK,有相应的功能可用。例如,对于 NodeJS SDK,您有:
电子邮件密码配方
第三方配方
getUsersByEmail
(请注意,这将 return 一组用户,因为您可以让多个用户使用同一电子邮件注册,但使用不同的 OAuth 提供商)
无密码食谱
getUserByEmail
(如果用户不存在,此功能将return Promise<undefined>
,如果他们使用phone号码注册)
第三方邮箱密码
第三方无密码
其他SDK
其他后端SDK,可以查看他们的文档:
Python SDK -> 选择你的食谱 -> 选择
asyncio
或syncio
模块(取决于你的网络框架执行环境)然后你会看到该配方公开的功能列表。其中之一将允许您从他们的电子邮件中获取用户。Golang SDK -> 点击“recipe”项,选择你的recipe,你会看到该recipe公开的函数列表。其中之一将允许您从他们的电子邮件中获取用户。
直接使用 SuperTokens 核心 API
在 API Spec 中,您可以看到每个食谱的部分。根据用户的注册方式,您可以使用他们的电子邮件作为查询参数来查询 /recipe/user
GET API。请务必在 GET 请求中传入正确的 rid
header。