Node.js 节点js s3fs图像上传至aws amazon s3服务器并设置ContentType

Node.js 节点js s3fs图像上传至aws amazon s3服务器并设置ContentType,node.js,amazon-s3,Node.js,Amazon S3,下面是我的节点javascript代码,用于使用s3fs库将图像上传到AmazonS3。图像上传正确,但当我试图在浏览器中查看该图像时,会出现下面提到的错误 我检查了内容类型,默认情况下它被保存为octet-stream。如果我手动将其设置为image/jpeg,则可以在浏览器中查看该图像。有人能告诉我如何在上传时设置内容类型,或者在上传完成后设置内容类型吗 我尝试设置内容类型,但它不适用于S3fs图像上传 错误代码:- <Error> <Code>NoSuchKey&l

下面是我的节点javascript代码,用于使用
s3fs
库将图像上传到AmazonS3。图像上传正确,但当我试图在浏览器中查看该图像时,会出现下面提到的错误

我检查了内容类型,默认情况下它被保存为
octet-stream
。如果我手动将其设置为
image/jpeg
,则可以在浏览器中查看该图像。有人能告诉我如何在上传时设置内容类型,或者在上传完成后设置内容类型吗

我尝试设置内容类型,但它不适用于
S3fs
图像上传

错误代码:-

<Error>
<Code>NoSuchKey</Code>
<Message>The specified key does not exist.</Message>
</Error>
我的实际代码:-

    var AWS= require('aws-sdk');

    var fs = require('fs');

    var S3FS = require('s3fs');

    var s3fsImpl = new S3FS('bbqmobileimages/images/banners',{
        accessKeyId:'A********A',
        secretAccessKey:'****************'
    });

    var multiparty = require('connect-multiparty'),
        multipartyMiddleware = multiparty();

    router.use(multipartyMiddleware);

        router.post('/api/v1/backoffice/upload/image',function(req,res){

            console.log(JSON.stringify(req.files));
            var file = req.files;
            console.log("file",JSON.stringify(file))
            console.log("original name:- "+file.fileUpload.originalFilename);
            console.log("Path:- ",file.fileUpload.path);
            var stream = fs.createReadStream(file.fileUpload.path);
            return s3fsImpl.writeFile(file.fileUpload.originalFilename, stream).then(function(){
                fs.unlink(file.fileUpload.path, function(err){
                    console.error(err);
                })
                console.log("Sucessfully uploaded to Amazon S3 server");
            });
        });
试一试

可在此处找到:

s3fsImpl.writeFile(file.fileUpload.originalFilename, stream, {"ContentType":"image/jpg"})