簡體   English   中英

PayloadTooLargeError:使用angular 7和nodejs express上傳圖像時請求實體太大

[英]PayloadTooLargeError: request entity too large in uploading image using angular 7 and nodejs express

我正在使用angular 7和nodejs express。 我想實現上傳圖片。 我的角度服務如下:

 postImage(fileToUpload: File) { 
    const formData = new FormData(); 
    formData.append("image", fileToUpload, fileToUpload.name); 
    return this.http.post(`${this.uri}/upload`, formData); 
  }

nodejs代碼如下:

const multer = require("multer"); 
var storage = multer.diskStorage({ 
  //multers disk storage settings 
  destination: function(req, file, cb) { 
    cb(null, "./uploads/"); 
  }, 
  filename: function(req, file, cb) { 
    var datetimestamp = Date.now(); 
    cb( 
      null, 
      file.fieldname + 
        "-" + 
        datetimestamp + 
        "." + 
        file.originalname.split(".")[file.originalname.split(".").length - 1] 
    ); 
  } 
}); 
app.post("/upload", function(req, res) {
  upload(req, res, function(err) {
    if (err) {
      res.json({ error_code: 1, err_desc: err });
      return;
    }
    res.json({ error_code: 0, err_desc: null });
  });
});
app.use(bodyParser.json({ limit: "50mb" })); 
app.use(bodyParser.urlencoded({ limit: "50mb", extended: true })); 
var upload = multer({ 
  //multer settings 
  storage: storage, 
  limits: { fileSize: 100000000000 } 
}).single("file"); 

但是我遇到了這個問題:

TypeError: app.enableCors is not a function 
    at Object.<anonymous> (D:\Projects\ServerShop\index.js:14:5) 
    at Module._compile (internal/modules/cjs/loader.js:688:30) 
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:699:10) 
    at Module.load (internal/modules/cjs/loader.js:598:32) 
    at tryModuleLoad (internal/modules/cjs/loader.js:537:12) 
    at Function.Module._load (internal/modules/cjs/loader.js:529:3) 
    at Function.Module.runMain (internal/modules/cjs/loader.js:741:12) 
    at startup (internal/bootstrap/node.js:285:19) 
    at bootstrapNodeJSCore (internal/bootstrap/node.js:739:3)

嘗試在body-parser代碼行下面添加這一行。

var cors = require('cors');
app.use(cors());

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM