aws-sdk bucket.getObject:没有“访问控制允许来源”错误
Posted
技术标签:
【中文标题】aws-sdk bucket.getObject:没有“访问控制允许来源”错误【英文标题】:aws-sdk bucket.getObject: No 'Access-Control-Allow-Origin' error 【发布时间】:2019-12-24 02:53:05 【问题描述】:我正在尝试从 S3 存储桶中获取一个对象,并在我的存储桶上配置了 CORS,但仍在获取
没有“访问控制允许来源”
错误
我已经尝试了所有在线可用的各种修复,但似乎没有任何效果。
我的角码
import Component from '@angular/core';
import * as AWS from 'aws-sdk';
@Component(
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.scss']
)
export class AppComponent
title = 'awsapp';
ngOnInit()
AWS.config.credentials = new AWS.Credentials(
accessKeyId: 'my-access-key',
secretAccessKey: 'my-secret-key'
);
AWS.config.update(
region: 'us-east-1'
);
getObject()
let s3 = new AWS.S3();
const params =
Bucket: 'my-bucket-name',
Key: 'testfolder/tests3.txt'
;
s3.getObject(params, function (err, data)
if (err)
console.error(err);
else
// const string = new TextDecoder('utf-8').decode(data.Body);
console.log(data);
);
【问题讨论】:
【参考方案1】:CORS 需要在服务器端进行配置。在服务器 cors 配置中添加这个
<AllowedHeader>*</AllowedHeader>
【讨论】:
我已经在我的 AWS 控制台上配置了我的 CORS,如下所示以上是关于aws-sdk bucket.getObject:没有“访问控制允许来源”错误的主要内容,如果未能解决你的问题,请参考以下文章
Webpack 生产构建失败:“无法解析 'aws-sdk'”
连接到 AWS-SDK 时的 Node.js 303 永久重定向
@aws-sdk/lib-storage 使用 JSONStream.stringify() 将 JSON 从 MongoDB 流式传输到 S3