Node.js React Native POST”一词;“多部分表单数据”;500服务器错误
当我试图将一个映像发布到我的Node/Express服务器(部署在Heroku上)时,我得到一个500服务器错误 通过邮递员发帖效果很好 以下是我的本机代码:Node.js React Native POST”一词;“多部分表单数据”;500服务器错误,node.js,react-native,express,post,Node.js,React Native,Express,Post,当我试图将一个映像发布到我的Node/Express服务器(部署在Heroku上)时,我得到一个500服务器错误 通过邮递员发帖效果很好 以下是我的本机代码: upload = async uri => { const formData = new FormData(); formData.append("photo", { uri, name: `photo`, type: `image/jpg` }); const options = {
upload = async uri => {
const formData = new FormData();
formData.append("photo", {
uri,
name: `photo`,
type: `image/jpg`
});
const options = {
method: "POST",
body: formData,
headers: {
"Content-Type": "multipart/form-data"
}
};
axios
.post("https://prezzi-api.herokuapp.com/upload", formData, options)
.then(response => {
console.warn(response.data);
})
.catch(error => {
console.warn("error uploading to OCR", error);
});
};
我的快速路线如下所示:
router.post(
"/",
multer.single("image"),
gcsMiddlewares.sendUploadToGCS,
(req, res, next) => {
console.log("post");
if (req.file && req.file.gcsUrl) {
return res.send(req.file.gcsUrl);
}
return res.status(500).send("Unable to upload");
}
);
当我不使用邮递员时,我路线中的console.log不会被击中
我仔细查看了Express route中的
res
对象,以了解哪些有效,哪些无效,以下是React Native app的最终效果:
uploadToOCR = async uri => {
const formData = new FormData();
formData.append("image", {
uri,
name: "photo.jpg",
type: "image/jpg",
headers: {
Accept: "application/json",
"Content-Type": "multipart/form-data"
}
});
const options = {
method: "POST",
body: formData
};
try {
const response = await fetch(
"https://prezzi-api.herokuapp.com/upload",
options
);
if (response) {
// const json = await response.json();
// console.warn("json", json);
console.warn("response", response);
}
} catch (error) {
console.warn("error uploading to OCR", error);
}
};
1) console.log看起来像:对象{“uri”:file:///var/mobile/Containers/Data/Application/F4126F94-70FD-47A8-BC38-F2BD09215F0A/Library/Caches/ExponentExperienceData/%2540pivcec%252FPrezzi/Camera/03E523CD-748F-4808-8B7C-990CE2E003B6.jpg“,}
2)正文已从选项中删除3)服务器错误持续存在