Вопросы о maxJsonLength в ASP.NET - PullRequest
       6

Вопросы о maxJsonLength в ASP.NET

2 голосов
/ 28 сентября 2010

Недавно я столкнулся с проблемой, связанной с моим приложением: размер строки JSON, возвращаемой с сервера, превышал значение по умолчанию maxJsonLength.Я провел некоторые исследования и внедрил некоторые исправления, включая вариант подкачки.На данный момент все выглядит отлично.Тем не менее, у меня все еще есть вопросы без ответов.

Прежде всего, большинство источников указывают на эту статью: http://geekswithblogs.net/frankw/archive/2008/08/05/how-to-configure-maxjsonlength-in-asp.net-ajax-applications.aspx

1. Почему 2 097 152 (2 МБ)?2 МБ - это слишком много данных для загрузки на веб-страницу.(Если пользователь не загружает что-то, но это другая история) Даже 1 МБ это слишком много.2. Затем автор продолжает пример maxJsonLength 500 000.Почему этот номер?Это только пример того, как установить свойство?Некоторые источники утверждают, что 500 000 - это предел.Ну, это не так, потому что я протестировал свое приложение с 2 097 152 (2 МБ, примерно в 4 раза больше 500 000), и оно заработало.3. В некоторых других источниках утверждается, что предел 4 МБ ... Итак, каков предел?Есть ли предел?Это как-то связано с лимитом ответа от сервера?4. Наконец, я хотел бы получить строгое предложение относительно длины строки JSON, получаемой с сервера.Не число, на которое должен быть установлен maxJsonLength, а фактическая длина строки JSON, своего рода «к чему стремиться».Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 28 сентября 2010

Я понимаю, что общий лимит определяется меньшим из упомянутых вами maxJsonLength и HttpRuntimeSection.MaxRequestLength . Я сейчас проверяю это, и я перезвоню вам.

Конечно, большая проблема здесь в том, что редко бывает хорошей идеей возвращать такие большие объемы данных. Всякий раз, когда у меня есть ответ, который начинает превышать около 100 КБ, я по-другому смотрю на мой общий дизайн и найти способы подавать небольшие куски по мере необходимости. Даже эти 100 КБ высоки для сценариев обязательных чистых данных, под которыми я подразумеваю текстовые данные, а не изображения или сценарии.

1 голос
/ 28 сентября 2010

Здесь нет жесткого и быстрого правила.Длина вашего Json будет зависеть от вашего приложения и от того, какую информацию вы возвращаете клиенту.

Если вы действительно хотите иметь «практическое правило», оно должно быть как можно меньше для передачи данных, которые выneed.

Для максимальных значений истинное ограничение снова будет зависеть скорее всего от требований браузера, но я лично никогда бы не пошел с более чем 2 МБ для сообщения Json просто из-за того, что потребуется, чтобы отправить этовниз.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...