보유 할 수있는 JSON의 양에는 제한이 있습니까?
주석 시스템에 jquery, JSON 및 AJAX를 사용하고 있습니다. 궁금합니다. JSON으로 전송 / 저장할 수있는 크기에 제한이 있습니까? 사용자가 많은 양을 입력하고 JSON을 통해 보내는 것처럼 일종의 최대 제한이 있습니까?
또한 JSON을 통해 모든 종류의 텍스트를 보낼 수 있습니다. 예를 들어 언젠가 사용자가 html을 사용하도록 허용하면 괜찮을까요?
JSON은 XML과 같은 다른 데이터 형식과 유사합니다. 더 많은 데이터를 전송해야하는 경우 더 많은 데이터를 보내면됩니다. JSON 요청에는 고유 한 크기 제한이 없습니다. 서버는 요청을 파싱하여 제한을 설정합니다. 예를 들어 ASP.NET에는 serializer의 "MaxJsonLength"속성이 있습니다.
JSON 데이터 블록의 크기 또는 필드의 크기에는 고정 된 제한이 없습니다.
다양한 브라우저의 JavaScript 구현이 처리 할 수있는 JSON의 양에는 제한이 있습니다 (예 : 약 40MB). 예를 들어이 질문을 참조하십시오 .
JSON 작성기 / 파서의 구현에 따라 다릅니다. Microsoft의 DataContractJsonSerializer는 약 8kb의 하드 제한을 가지고있는 것으로 보이며 (8192라고 생각합니다) 더 큰 문자열에 대해서는 오류가 발생합니다.
편집 : 우리는이 답변에 설명 된대로 웹 구성에서 MaxJsonLength 속성을 설정하여 JSON 문자열에 대한 8K 제한을 해결할 수있었습니다 : https://stackoverflow.com/a/1151993/61569
보내거나받을 JSON 데이터의 크기에는 제한이 없습니다. Json 데이터도 파일로 보낼 수 있습니다. 작업중인 브라우저의 기능에 따라 Json 데이터를 처리 할 수 있습니다.
구현시 크기를 포함하여 JSON 문서에 대한 제한을 자유롭게 설정할 수 있으므로 구문 분석기를 현명하게 선택하십시오. RFC 7159 섹션 9를 참조하십시오 .
"구현은 받아 들일 수있는 텍스트의 크기에 제한을 설정할 수 있습니다. 구현은 최대 중첩 깊이에 제한을 설정할 수 있습니다. 구현은 숫자의 범위와 정밀도에 제한을 설정할 수 있습니다. 구현은 길이와 문자에 대한 제한을 설정할 수 있습니다 문자열의 내용. "
ASP.NET MVC로 작업하는 경우 MaxJsonLength 를 결과 에 추가하여 문제를 해결할 수 있습니다.
var jsonResult = Json(new
{
draw = param.Draw,
recordsTotal = count,
recordsFiltered = count,
data = result
}, JsonRequestBehavior.AllowGet);
jsonResult.MaxJsonLength = int.MaxValue;
JSON 문자열의 최대 길이 기본값은 2097152 자이며 4MB의 유니 코드 문자열 데이터에 해당합니다.
아래 URL을 참조하십시오
참고 URL : https://stackoverflow.com/questions/1262376/is-there-a-limit-on-how-much-json-can-hold
'programing tip' 카테고리의 다른 글
iframe, 포함 및 객체 요소의 차이점 (0) | 2020.06.12 |
---|---|
GUI를 단위 테스트하려면 어떻게해야합니까? (0) | 2020.06.12 |
기본 생성자와 소멸자에서 "= default"는 "{}"과 어떻게 다릅니 까? (0) | 2020.06.12 |
오류 발생 ( 'msg') vs 새 오류 발생 ( 'msg') (0) | 2020.06.12 |
이 확인란은 어떻게 작동하며 어떻게 사용합니까? (0) | 2020.06.12 |