在创建Telegram机器人时,无法读取未定义的属性“变量”
我相信你们都遇到了这个问题,但如果有任何可以帮助我会很高兴。 我真的确定我的代码中没有写错误。 我正在尝试制作一个发送歌词的机器人,但是正在返回一个JSON文件。当我尝试从文件中打印WHATEVER语句时,它会抛出上述错误。 这是代码:
const Genius = require("node-genius");
const geniusClient = new Genius('some API');
geniusClient.search('blank space', function gotData(err, data){
console.log(data.meta.status);
});
输出JSON文件有很多分支,但这里是我不需要的元部分,只是为了简单起见。
{
"meta": {
"status": 200
},
"response": {
"hits": [
{
"highlights": [],
"index": "song",
"type": "song",
"result": {
"annotation_count": 27,
stuff..........stuff
回答如下:
你得到一个字符串,尝试使用JSON.parse()
将其转换为对象:
var obj = JSON.parse(data);
console.log(obj.meta.status);
在创建Telegram机器人时,无法读取未定义的属性“变量”
我相信你们都遇到了这个问题,但如果有任何可以帮助我会很高兴。 我真的确定我的代码中没有写错误。 我正在尝试制作一个发送歌词的机器人,但是正在返回一个JSON文件。当我尝试从文件中打印WHATEVER语句时,它会抛出上述错误。 这是代码:
const Genius = require("node-genius");
const geniusClient = new Genius('some API');
geniusClient.search('blank space', function gotData(err, data){
console.log(data.meta.status);
});
输出JSON文件有很多分支,但这里是我不需要的元部分,只是为了简单起见。
{
"meta": {
"status": 200
},
"response": {
"hits": [
{
"highlights": [],
"index": "song",
"type": "song",
"result": {
"annotation_count": 27,
stuff..........stuff
回答如下:
你得到一个字符串,尝试使用JSON.parse()
将其转换为对象:
var obj = JSON.parse(data);
console.log(obj.meta.status);