javascript - Como posso enviar arquivo csv para o S3 contendo '/' na URL usando aws-sdk/lib-storage?
Estou tentando enviar um arquivo csv usando aws-sdk/lib-storage
Quando especifico a URL do S3 (ex. https://s3.us-east-1.amazonaws.com/aaa/bbb/ccc/ddd/eee) na propriedade Bucket dos parâmetros, ocorreu a mensagem de erro InvalidBucketName: O nome do bucket não deve conter '/'.
Como posso especificar uma URL contendo '/'?
- código
const parallelUploads3 = new Upload({
client: new S3Client({
region: 'us-east-1',
credentials
}),
params: {
Bucket:
'https://s3.us-east-1.amazonaws.com/aaa/bbb/ccc/ddd/eee,
Key: file.name,
Body: file
},
leavePartsOnError: false
})
Quando eu especifico apenas o nome do bucket, sem conter '/', o envio foi bem-sucedido.
Resposta #1
No parâmetro 'Bucket', apenas informe o nome do bucket e no 'Key' informe o caminho e o nome do arquivo. E também não é necessário colocar 'https://s3.us-east-1.amazonaws.com/' no parâmetro 'Bucket'. Então, seu código ficaria assim:
const parallelUploads3 = new Upload({
client: new S3Client({
region: 'us-east-1',
credentials
}),
params: {
Bucket: <Bucket Name>,
Key: <File Path>/file.name,
Body: file
},
leavePartsOnError: false
})
