当前位置: 首页 > 知识库问答 >
问题:

我正在接收一个对象作为响应,通过使用响应将其转换为JSON。json()但无法从json中获取值?[副本]

公冶嘉
2023-03-14

我正在向spotify发送一个请求,从他们那里获取一个id值,以便稍后在post请求中使用。

fetch('https://api.spotify.com/v1/me', {
    headers: {
        'Authorization': `Bearer ${token}`
    }
}).then(response => {
    let jsonResponse = response.json();
});

这段代码返回一个对象,当使用response转换为jason时,它看起来像这样。json()

Promise {<pending>}__proto__: Promise[[PromiseStatus]]: "resolved"[[PromiseValue]]: Objectdisplay_name: "Jesse James"external_urls: {spotify: "https://open.spotify.com/user/1257754444"}followers: {href: null, total: 3}href: "https://api.spotify.com/v1/users/1257754444"id: "1257754444"images: [{…}]type: "user"uri: "spotify:user:1257754444"__proto__: Object

但当我使用console.log(jsonResonse.id)我得到一个未定义。如何获得该值?

共有1个答案

贝研
2023-03-14

response.json返回一个Promise

因此,只需按如下方式继续promise链

fetch('https://api.spotify.com/v1/me', {
    headers: {
        'Authorization': `Bearer ${token}`
    }
})
.then(response => response.json()) // response.json() returns a Promise
.then(jsonResponse => {
    // here jsonResponse is the json you were looking for
});
 类似资料:
  • 我正在处理jBPM 7.22.0。最终的 我使用服务任务REST从这个api获取响应https://reqres.in/api/users/1 我想将此响应获取到一个对象中,因此我创建了这个类(或jBPM中调用的数据对象): 我在jBPM中创建了一个名为res的全局变量,该变量具有我要存储响应的数据对象的类型。因此,在我的REST服务任务的“任务”中,我有屏幕截图中的内容。 如您所见,我想将结果存

  • 我需要将其转换为以下格式: 类型的数量可以改变(例如,可以只有A和B)。有人能帮我吗?我使用这个组件在网站https://js.devexpress.com/demos/widgetsgallery/demo/datagrid/simplearray/angular/light/上显示数据

  • 我用这个服务结果构造了一个组件类对象,我也得到了错误 错误TypeError:无法读取未定义的属性“name” 当我在HTML文件中使用它时。

  • 问题内容: 我想从Http get响应中获取一个对象: 这是我当前对Http get的代码: 这是convertSteamToString函数: 现在,我只是得到一个字符串对象。我如何找回JSON对象。 问题答案: 您获得的字符串只是JSON Object.toString()。这意味着您将获取JSON对象,但使用String格式。 如果应该获取JSON对象,则可以输入:

  • 我想从Http get响应中获取一个对象: 这是我当前的Http get代码: 这是转换的SteamToString函数: 现在我只是得到一个字符串对象。如何取回JSON对象。

  • 我是格森的新手。我需要将下面的JSON响应转换成一个列表。 JSON响应: 我有一门课要教数据 账户JAVA 当我对我的班级做出回应时,我得到了: 现在我需要将这两个值放入