AJAX POST 413负载过大NodeJ + Express 4>

ivqmmu1c  于 2022-12-12  发布在  Node.js
关注(0)|答案(1)|浏览(154)

我的 AJAX POST抛出了错误413 Payload Too Large。我在我的nodejs代码中尝试了以下解决方案:

"use strict";
var bodyParser = require('body-parser');
var express = require('express');  
var jsonParser = bodyParser.json();

var workspace = (app, dbconn)=>{
  app.use( bodyParser.json({limit: '50mb'}) );
  app.use(bodyParser.urlencoded({
  limit: '50mb',
  extended: true,
  parameterLimit:50000
  }));
}

但这仍然是抛出错误。
我 AJAX 调用如下:

$.ajax({
    url: "/private/save_ws",
    type: 'post',
    headers: {'x-secure':_user_token, 'x-user':_user_name},
    contentType: 'application/json',       
    dataType: 'json',            
    data: widget_data
}).done(function(response){
    console.log('success');
}).fail(function(data){
    console.log('FAILED! ERROR: ');
});
9lowa7mx

9lowa7mx1#

在Express〉4的版本中,body-parser包含在Express库中。您需要进行如下更改。
而不是这样:

app.use( bodyParser.json({limit: '50mb'}) );  
app.use(bodyParser.urlencoded({
    limit: '50mb',
    extended: true,  
    parameterLimit:50000
}));

请执行以下操作:

app.use( express.json({limit: '50mb'}) );  
app.use(express.urlencoded({
    limit: '50mb',
    extended: true,  
    parameterLimit:50000
}));

相关问题