gpt4 book ai didi

node.js - Auth0 getProfile 不返回 user_id

转载 作者:太空宇宙 更新时间:2023-11-03 22:09:39 26 4
gpt4 key购买 nike

我正在为我的nodejs项目调用node-auth0 sdk。

auth0.getProfile(accessToken, function (err, userInfo) {
if (err) {
res.status(400).json(err)
}
console.log(userInfo);
});

返回的userInfo不包含user_id enter image description here

如果我想通过access token获取user_id该怎么办?

最佳答案

在您的屏幕截图中,sub 声明(主题)是 user_id。请确认您期望的 user_id 是否应为 facebook|1

您需要使用

解析 String JSON 对象
const userId = JSON.parse(userInfo)['sub'];

这是工作示例:

var AuthenticationClient = require('auth0').AuthenticationClient;

var auth0 = new AuthenticationClient({
domain: '{TENANT}.auth0.com',
clientId: '{client id}'
});

const accessToken = '{access token}';

auth0.getProfile(accessToken, function (err, userInfo) {
const userId = JSON.parse(userInfo)['sub'];
console.log(userId);
});

仅供引用 - 因为您正在处理 String 对象,所以当您调用 sub 时,您将获得对已弃用的 String sub prototype function 的引用。可以理解困惑。如果您不确定对象是什么类型,最好的检查方法是 console.log(typeof userInfo);

关于node.js - Auth0 getProfile 不返回 user_id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46322924/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com