AWS の JavaScript SDK を使用して、Web ブラウザから私の S3 バケットにファイルをアップロードしようとしています。私のコードは次のようになります。
AWS.config.credentials = new AWS.CognitoIdentityCredentials({
AccountId: 'dfhgdh',
IdentityPoolId: 'fdagsd',
RoleArn: 'fdafds'
});
var bucket = new AWS.S3({params: {Bucket: 'test-bucket'}});
var pdfUpload = document.getElementById('pdf-uploads').files[0];
var params = {Key: pdfUpload.name, ContentType: pdfUpload.type, Body: pdfUpload};
bucket.putObject(params, function (error, data) {
if (error) {
console.log(error);
} else {
console.log(data);
}
});
ただし、putObject コマンドに到達するたびに、AWS からエラーが返され続けます。
「エラー: 構成に資格情報がありません {メッセージ: "構成に資格情報がありません"、コード: "CredentialsError"..."
ここには単純で愚かな何かが欠けていると確信していますが、私の人生のために何ができるのかわかりません。(偽の秘密鍵などをハードコーディングしようとすると別のエラーが発生するので、cognito資格情報を設定しようとしている方法に関係があると確信しています。)