将 JSON 中的字符串放入 var

Put a string from JSON into var

我是一名 Linux 系统管理员,几乎没有编码经验。我被要求在 nodejs 中开发一个演示 RCS 聊天机器人,它会回显它收到的任何消息。我很惊讶我能做到这么远,我只有最后一件事要做。我真的很喜欢这个项目,我希望我能为最后一件作品寻求一些帮助。我正在尝试创建一个变量 OD 并输入 access_token

的值

我有这部分代码:

request5(options5, function (error, responseOD) {
              if (error) throw new Error(error);
              console.log(responseOD.body); // <--------------------------- Third line
              var OD = responseOD.body.access_token;
              console.log(OD); // <------------------------------- Fifth line
              var ODtoken = "Bearer ".concat(OD);
              });

第三行(我在代码片段中写了“第三行”)returns这个:

      {
        "token_type": "Bearer",
            "access_token": "cbYAmA9iElLteoAQrj9GsDT2VrnD",
            "expires_in": "7776000"
      }

但是由于某种原因,第五行(console.log(OD);,我在代码片段中写了“第五行”)returns:

undefined

有谁知道为什么 OD 变量不会收到来自 JSON 响应的 access_token

非常感谢!

您只想使用 JSON.parse(string) 函数将该字符串主体解析为 Javascript 对象。最后你的代码应该是这样的:

request5(options5, function (error, responseOD) {
    if (error) throw new Error(error);
    var bodyAsObject = JSON.parse(responseOD.body);
    var OD = bodyAsObject.access_token;
    var ODtoken = "Bearer ".concat(OD);
});