Javascript Multer Req.files.path不可编辑?
我目前正试图通过Multer file uploads更改req.files.path中多个文件的路径,但这些路径似乎不想更改。这是我的密码:Javascript Multer Req.files.path不可编辑?,javascript,node.js,express,multer,Javascript,Node.js,Express,Multer,我目前正试图通过Multer file uploads更改req.files.path中多个文件的路径,但这些路径似乎不想更改。这是我的密码: app.post("/api/imageUpload", upload.array("uploadedImages"), function(req, res) { req.files.forEach(function(file) { file.path.replace(/\\/g, "/").substring("public".
app.post("/api/imageUpload", upload.array("uploadedImages"), function(req, res) {
req.files.forEach(function(file) {
file.path.replace(/\\/g, "/").substring("public".length);
console.log(file.path);
});
res.status(200).send({files: req.files});
});
我的文件的原始路径类似于public\uploads\filename
此代码试图替换前斜杠路径中的反斜杠。当我输入console.log路径时,没有任何更改。当我使用AJAX调用将文件res.send到浏览器时,也不会发生任何变化(当我尝试使用.replace方法更改JS文件中的路径时,它仍然不起作用)。我还有一些代码,Multer只上传了一个文件,路径可以很好地改变;但是,我将路径指定给一个变量,因此这可能就是问题所在。我只是想知道这是否是问题所在(如果是,为什么?)
非常感谢您的帮助 字符串函数的replace()
string不会改变字符串。如果要替换字符串,请使用以下命令:
req.files.forEach(function(file) {
file.path = file.path.replace(/\\/g, "/").substring("public".length);
console.log(file.path);
});
啊,我就知道事情会很简单。非常感谢这一点;我相信它会起作用,但我会在回家后进行测试,让每个人都知道。没问题。。。请投票并接受这个答案,如果它解决了问题…@AaronMarsden你能解决这个问题吗。。。??