[英]How to upload image(Base64 String) to the server from Android with NodeJS as a back end?
我正在使用Node js從Android應用程序上傳圖像。 結果非常不可預測。 有時上傳成功,有時卻失敗。 我在客戶端使用Retrofit將數據發送到服務器API,該服務器API由兩個字段1)Base64 String和2)映像名稱組成。 在服務器端,我正在使用這段代碼
app.post("/api/image", function (req, res) {
var image = req.body.image;
var name = req.body.name;
var response = {};
fs.writeFile(path, new Buffer(image, "base64"), function (err) {
response.message = "success";
res.send(response);
});
});
有時我會收到成功消息,而大多數時候卻是失敗消息。
可能是什么問題? 在跳到Node Js之前,我一直在使用PHP,並且相同的客戶端代碼在PHP上成功但在Node js中失敗。 注意:我正在使用AWS。
您應該查找錯誤發生的位置:在writeFile調用之前或在中間件調用之前。 同樣,最好用詳細信息來增強您的問題:實際發生了什么,過程在哪里失敗,它是否創建文件,等等。
可能有幾個問題:
看起來Pasha是正確的。 由於某些圖像比其他圖像大,因此主體太大,因此我遵循了此代碼並解決了我的問題。
var bodyParser = require('body-parser');
app.use(bodyParser.json({limit: "50mb"}));
app.use(bodyParser.urlencoded({limit: "50mb", extended: true,parameterLimit:50000}));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.