ajax 가 빅 데 이 터 를 전달 하 는 배경 수신 에 실패 한 문제 기록

오늘 프로젝트 는 전단 에서 데 이 터 를 처리 한 후 ajax 요청 을 사용 하여 자바 배경 에 전달 해 야 합 니 다. 결 과 는 배경 에서 받 아들 일 수 없습니다 (null). 코드 는 다음 과 같 습 니 다.
function saveProj(lm, data) {
	$.ajax({
		async: false,
		url: '/RoadProj/SaveProjection',
		type: 'post',
		dataType: 'json',
		data: {'lm': lm, 'data': JSON.stringify(data)},
		success: function(res) {
			console.log(res);
		}
	}); 
	console.log(lm);
	console.log(js_sgdd);
}

처음에 ajax 가 요청 할 때 데이터 가 준비 되 지 않 았 다 고 생각 했 습 니 다. 끊임없이 디 버 깅 코드 를 통 해 일부 데이터 로 만 전송 할 수 있 고 데이터 양 이 일정한 범 위 를 초과 한 후에 배경 에서 받 아들 이면 null 입 니 다.
var data = [];
for(var i=0; i<10000; i++) {
	data.push(js_sgdd[i]);	
}
saveProj("    ", data);

그 다음 에 인터넷 을 통 해 자 료 를 찾 습 니 다. 말 할 때 전단 Content - Length 문제 가 있 고 말 할 때 배경 문제 가 있 습 니 다. 최종 적 으로 해결 방안 을 찾 았 습 니 다. 제 가 Tomcat 서버 를 사용 하기 때문에 Tomcat 은 post 요청 에 최대 제한 이 있 습 니 다. server. xml 의 maxPostSize 매개 변 수 를 수정 하여 무제 한 (Tomcat 7.0.63 후 마이너스 로 설정 해 야 데이터 크기 를 제한 하지 않 음) 을 의미 합 니 다.원본 부분 은 다음 과 같 습 니 다.
<Connector connectionTimeout="20000" port="8095" protocol="HTTP/1.1" redirectPort="8443" />

수정 후 다음 과 같 습 니 다:
<Connector connectionTimeout="20000" port="8095" protocol="HTTP/1.1" redirectPort="8443" maxPostSize="-1"/>

참고:https://blog.csdn.net/mxxlevel/article/details/38117185

좋은 웹페이지 즐겨찾기