Javascript 无法从nodejs请求结果中读取结果
我通过node js的请求向FB graph api发出请求:Javascript 无法从nodejs请求结果中读取结果,javascript,node.js,Javascript,Node.js,我通过node js的请求向FB graph api发出请求: request({ url: 'https://graph.facebook.com/v2.6/' + userId + '?fields=first_name,last_name&access_token=' + token, method: 'GET', }, function (error, response, body) { console.log(erro
request({
url: 'https://graph.facebook.com/v2.6/' + userId + '?fields=first_name,last_name&access_token=' + token,
method: 'GET',
}, function (error, response, body) {
console.log(error);
}).on('response', function (response) {
response.on('data', function (data) {
console.log('user data ' + data); // logs user data {
// "first_name": "Marcus",
// "last_name": "Green" }
var userData = {
firstName: data['first_name'],
lastName: data['last_name']
};
console.log(userData.firstName) // logs undefined
})
});
当我分配like
data.first\u name
或data.last\u name
时也会发生同样的情况,如果第一次调用console.log('user data'+data')代码>返回:
“用户数据{”姓氏“:“A”,“姓氏“:“B”}”
而不是:
“用户数据[对象]”
这意味着数据
对象是字符串,而不是对象。如果要将其用作对象并访问其字段,请首先使用以下方法对其进行解析:
var parsedData = JSON.parse(data);
console.log(parsedData.first_name); // Logs first_name now
如果第一次调用console.log('用户数据'+数据)代码>返回:
“用户数据{”姓氏“:“A”,“姓氏“:“B”}”
而不是:
“用户数据[对象]”
这意味着数据
对象是字符串,而不是对象。如果要将其用作对象并访问其字段,请首先使用以下方法对其进行解析:
var parsedData = JSON.parse(data);
console.log(parsedData.first_name); // Logs first_name now