节点js将图像存储到外部服务器中

时间:2017-07-13 06:36:34

标签: node.js azure multer

我正在开发一个Web应用程序,其中服务器存储在不同的Azure服务器中,而前端也存储在不同的Azure服务器中。 当我尝试在节点js中使用multer将URL存储到前端服务器时,它总是返回找不到该路径。当我看到错误日志时,我发现了这个

  

错误:ENOENT:没有这样的文件或目录,打开   'd:\家\网站\ wwwroot的\ HTTP:\ nomadiccare-portal.azurewebsites.net \影像\ undefined.png'       在错误(本机)

这是我的节点js的源代码,它完全适用于localhost。

 var uploadImageURL="http://nomadiccare-portal.azurewebsites.net/images/";
 var currentClientId;
 var storage = multer.diskStorage({
     destination: function (request, file, callback) {
            callback(null, uploadImageURL);
     },
     filename: function (request, file, callback){
      console.log("It Is In"+file);
      callback(null,currentClientId+".png");
     }
  });
var upload = multer({ storage: storage });

如何从网址中删除D:\ home \ site \ wwwroot \?

2 个答案:

答案 0 :(得分:0)

DiskStorage的{p> destination用于确定应在哪个文件夹中存储上传的文件。它必须是磁盘的路径而不是网站的URL。

如果其他服务器具有上传文件的发布路径,则可以在成功保存文件后使用服务器中的文件数据发出发布请求。请参阅this,您可以了解如何使用Node.js中的数据将HTTP发布请求从服务器发送到另一台服务器。

答案 1 :(得分:0)

var storage = multer.diskStorage({
  destination: uploadImageURL, // change here
  filename: function (request, file, callback) {
    console.log('It Is In' + file)
    callback(null, currentClientId + '.png')
  }
})