gpt4 book ai didi

javascript - 什么是 AWS S3 存储桶响应中的 Unit8Array

转载 作者:搜寻专家 更新时间:2023-10-31 23:59:33 24 4
gpt4 key购买 nike

我正在调用 AWS S3 getObject 函数:(AWS.Request) getObject(params = {}, callback)

我是这样写的:

getMenuJson() {
this.s3.getObject({
Bucket: 'improd-image-pipeline',
Key: 'remoteUX/qa/menus/v1/menus.json',
ResponseContentType: 'application/json',
}, (err, data) => {
if (err) {
this.$log.log(err);
} else {
this.$log.log(data, JSON.parse(data.Body));
}
});
}

这是控制台输出,我尝试在 S3 控制台上打印数据和实际的 menus.json 文件。 enter image description here

如果我这样打印返回数据:JSON.parse(data.Body),这是结果。

 {  
"menus":[
{
"name": "Flat Collections Example",
"menuId": "aaa-3656-4a32-bdda-e2e016cf35ee"
},
{
"name":"P3",
"menuId": "aaa-f5fc-4e18-9089-47e43a4237e8"
},
{
"name": "Tabbed Menu Example",
"menuId": "aaa-768a-40bd-a9f4-b633f3679c36"
}
]
}

但是,如何理解响应主体:Unit8Array,以及如何将其解释为实际的 json 格式数据?

我正在使用 Angular.toJson(data.Body) 并且这个函数不理解它,但是 JSON.parse(data.Body) 会得到正确的结果。

最佳答案

它是一个 JavaScript 类型化数组,表示一个 8 位无符号整数数组。

AWS.Request.getObject() data.Body 的返回值可以是以下任何一种:Buffer、Typed Array、Blob、String、ReadableStream。

可以查看AWS docs了解更多信息。

在您的例子中,它是 Uint8Array(JavaScript 类型数组)。

了解更多:JavaScript Typed Arrays , Uint8Array object

关于javascript - 什么是 AWS S3 存储桶响应中的 Unit8Array,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40368517/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com