簡體   English   中英

使用Node.js在Amazon S3中上傳文件

[英]File uploading in Amazon S3 with Node.js

我正在使用aws-sdk在Amazon S3上上傳文件。 它可以正常工作並可以上傳文件,但是我的問題是; 上傳到服務器后更改了文件名。 例如,如果我上傳sample.jpg ,並將其重命名為b4c743c8a2332525.jpg 這是我的代碼。

AWS.config.update({ 
    accessKeyId: key, 
    secretAccessKey: secret
});

var fileStream = fs.createReadStream(path);

fileStream.on('error', function (err) {
    if (err) { throw err; }
});

fileStream.on('open', function () {
    var s3 = new AWS.S3();
    s3.putObject({
        Bucket: bucket,
        Key: directory + file,
        Body: fileStream
    }, function (err) {
        if (err)
            res.send(err);
        fs.unlinkSync(path);
    });
});

將文件上傳到S3服務器后更改文件名是否正常,或者是否可以選擇上傳相同文件名? 謝謝。

S3和AWS開發工具包都不會為您上傳的內容選擇任意文件名。 名稱由您自己的代碼設置。

directory + file的值設置為S3對象鍵時,請檢查該值。 您可能正在從瀏覽器上載“ sample.jpg”(因此該文件在磁盤上本地稱為sample.jpg ),但是node.js用於標識其磁盤上文件的臨時文件名可能使用了像b4c743c8a2332525.jpg

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM