我敢肯定大家都遇到了这个问题,但是如果有什么帮助的话,我会很高兴的。
我非常确定我的代码中没有错误被写入。
我正在尝试制作一个发送歌词的机器人,但是返回了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部分,只是为了简单起见。

{
    "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);

10-06 11:08