【问题标题】:How to parse Jason data from node.js console.log (response.body); [duplicate]如何从 node.js console.log (response.body) 解析 Json 数据; [复制]
【发布时间】:2021-03-12 13:14:19
【问题描述】:

我一直在努力解决这个问题。我下面的 node.js 代码返回到响应的控制台日志正文。响应有一个 access_token(JWT 承载)。我只需要从响应中取出 access_token 并将令牌作为参数重用于后续步骤。任何建议表示赞赏。

var request = require('request');
var options = {
  'method': 'POST',
  'url': 'https://weburl-eu.eu.auth0.com/oauth/token',
  'headers': {
    'Content-Type': 'application/json'
    
  },
  body: JSON.stringify({
    "grant_type": "client_credentials",
    "audience": "urn:",
    "client_id": "id",
    "client_secret": "secret"
  })

};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});

【问题讨论】:

  • 这能回答你的问题吗? Javascript how to parse JSON array
  • JSON.parse()?
  • 任何想法如何仅提取键“access_token”的值并在我的下一个从console.log(response.body)中再次使用它;

标签: javascript node.js lambda


【解决方案1】:
request(options, function (error, response, body) {
   if (error) throw new Error(error);
   const stringBodytoJason = JSON.parse(body);
   const token = stringBodytoJason.access_token;
   console.log(token);
}

【讨论】:

  • 感谢您提供此代码 sn-p,它可能会提供一些有限的即时帮助。 proper explanation 将通过展示为什么这是解决问题的好方法,并使其对有其他类似问题的未来读者更有用,从而大大提高其长期价值。请编辑您的答案以添加一些解释,包括您所做的假设。
【解决方案2】:

如果你想从一些字符串化的 Json 中获取一个属性,那么你可以这样做,就像 tkausl 建议的那样。

const obj = {
  auth: '1234',
  notAuth: 'a',
  someField: true
};

const stringified = JSON.stringify(obj);
console.log(stringified);

const auth = JSON.parse(stringified).auth
console.log(auth);

【讨论】:

  • 所以我按照前面提到的那样做了。当我运行代码时,它显示未定义 request(options, function (error, response) { if (error) throw new Error(error); console.log (response.body); const stringBodytoJason = JSON.stringify(response.body) const token = JSON.parse(stringBodytoJason).access_token console.log(token);
  • 我把它修好了。问题。是 (typeof response.body) 是一个字符串。所以我必须这样做才能只获得令牌。 ` const token = JSON.parse(response.body).access_token console.log(token); ` 谢谢@ps_singh21 和@Stefan
猜你喜欢
  • 2018-04-24
  • 2014-07-24
  • 2018-10-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-24
  • 2016-11-26
  • 2014-03-20
相关资源
最近更新 更多