Node.js 从Node和Express后端将文件上载到S3

Node.js 从Node和Express后端将文件上载到S3,node.js,express,amazon-s3,Node.js,Express,Amazon S3,我下面是一篇关于如何将图像文件上传到S3存储桶的文章。但是,指定的S3存储桶中没有显示任何文件。如本教程所述,我发送了一个“putobject”请求,以获取一个“签名url”作为响应 s3bucket.getSignedUrl('putObject', s3_params, function(err, data){ // Error... else{ var return_data = { requestUrl: data }; res.json(

我下面是一篇关于如何将图像文件上传到S3存储桶的文章。但是,指定的S3存储桶中没有显示任何文件。如本教程所述,我发送了一个“putobject”请求,以获取一个“签名url”作为响应

s3bucket.getSignedUrl('putObject', s3_params, function(err, data){
    // Error...
    else{
        var return_data = { requestUrl: data };
        res.json( generalResponse( return_data ));
    }
然后我将return_数据变量传递给XMLHttpRequest 发出put请求

xhr.open("PUT", signed_request);
Express和S3中CORS的配置如下所示:

Express:

app.use(function(req, res, next){
    res.header("Access-Control-Allow-Origin", "*");
    res.header("Access-Control-Allow-Headers", "X-Requested-With");
    next();
});
<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<CORSRule>
    <AllowedOrigin>*</AllowedOrigin>
    <AllowedMethod>GET</AllowedMethod>
    <AllowedMethod>POST</AllowedMethod>
    <AllowedMethod>PUT</AllowedMethod>
    <MaxAgeSeconds>3000</MaxAgeSeconds>
    <AllowedHeader>Authorization</AllowedHeader>
</CORSRule>
</CORSConfiguration>
S3存储桶:

app.use(function(req, res, next){
    res.header("Access-Control-Allow-Origin", "*");
    res.header("Access-Control-Allow-Headers", "X-Requested-With");
    next();
});
<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<CORSRule>
    <AllowedOrigin>*</AllowedOrigin>
    <AllowedMethod>GET</AllowedMethod>
    <AllowedMethod>POST</AllowedMethod>
    <AllowedMethod>PUT</AllowedMethod>
    <MaxAgeSeconds>3000</MaxAgeSeconds>
    <AllowedHeader>Authorization</AllowedHeader>
</CORSRule>
</CORSConfiguration>

*
得到
邮递
放
3000
授权
nodemanshell或控制台中都没有出现语法错误或服务器错误。我认为一定有一些配置问题阻止文件从客户端上传到S3。
我非常感谢你在这个问题上的帮助

几项健全性检查:也许,看看它的代码,或者尝试一下,这会对你有所帮助。几项健全性检查:也许,看看它的代码,或者尝试一下,这会对你有所帮助。