【发布时间】:2021-07-15 02:11:35
【问题描述】:
我正在使用 multer 和 Nodejs 上传图片。上传完美。问题是我想将这些图像直接上传到 IIS Webserver 的 wwwroot 文件夹内的文件夹中。
var Storage = multer.diskStorage({
destination: function (req, file, callback) {
// callback(null, "../grit-server/uploads/");
callback(null, "https://example.com/grit/images/photogallery/");
},
filename: function (req, file, callback) {
const sqc = sqlConn;
var fileNames = (file.originalname.split('_'))
let query = 'INSERT INTO dbo.MS_PhotoGallery (MinorId,Photo_Name) VALUES (@MinorId,@PhotoName)'
let params = [
sqc.paramize('MinorId', fileNames[1], sql.Int()),
sqc.paramize('PhotoName',fileNames[2], sql.VarChar(255))
]
sqc.SqlExecuteStatementCallback(
query,params,(result)=>{
res.send(result)
}
)
callback(null, file.originalname);
}
});
上面的代码是 Multer 存储,我在其中设置了 URL 上传图像的位置。但它抛出错误
'Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client'
要上传Storage 下提到的URL 中的图片,我应该做哪些修改才能将任何照片保存在该位置。
【问题讨论】: