我正在尝试以任何一种方式上载文件,但是我无法使其正常工作。客户端代码如下:
var image = document.getElementById("upload").files[0];
我以这种方式抓取文件,我对它进行控制台记录,并且工作正常。
const request = axios.post(PROJECTS_URL, {avatar: image});
我发送了发帖请求并获得状态500。 当我将发布请求的正文更改为纯文本,并编辑服务器以接收文本时,它可以正常工作。
我也尝试过这个:
var formData = new FormData();
formData.append("avatar", image, image.name)
const request = axios.post(PROJECTS_URL, formData);
对于服务器端代码,我正在使用multer,它看起来像这样:
app.post("/api", upload.single("avatar"), (req, res) => {
var entry = new Entry({
img: req.file.path
})
entry.save().then((data) => {
res.status(200).send(data)
}, (e) => {
res.send(e)
})
})
我设置了multer中间件,只是不包括它。 我正在尝试将图像上传到mongodb数据库,以便以后可以在客户端使用图像url。 我真的被困在这里,不胜感激任何建议。
在我的chrom控制台上,我看到了 内容类型:多部分/表单数据; boundary = ---- WebKitFormBoundarye2QF7dzzJWEGUjJE; 边界部分是什么,是否阻止了我提交表单?
答案 0 :(得分:0)
所以问题出在我的服务器上,我没有用上载文件推送到git。在heroku上查看日志很有帮助,从那里我收到一条错误消息“无此文件或目录”。我经常使用git commit -am命令,以至于我忘了检查git状态,然后上传了上传文件。