Ограничение JSON? - PullRequest
       27

Ограничение JSON?

7 голосов
/ 01 апреля 2010

Хотелось бы узнать, имеет ли JSON с AJAX ограничение на объем данных, который может содержать исходящий и возвращаемый параметры?

Я бы хотел иметь возможность отправлять и возвращать с сервера файл с 10 000 строк в виде строки. Как мне решить эту задачу? Сможет ли это передать один параметр?

EDIT: Мой клиент JavaScript, а мой сервер PHP.

Спасибо.

Ответы [ 5 ]

5 голосов
/ 01 апреля 2010

JSON по своей природе не имеет ограничений на количество данных, которые он может передавать, или ограничений на глубину рекурсии. Это зависит от вашего сервера приложений.

Если вы используете JSONSerialization с C #, ограничение на объем данных устанавливается довольно низким. Вы можете перезаписать это, поместив следующий фрагмент кода в ваш файл Web.config.


<system.web.extensions>
        <scripting>
            <webServices>
                <jsonSerialization maxJsonLength="2147483644"></jsonSerialization>
            </webServices>
        </scripting>
    </system.web.extensions>

Вы, вероятно, не хотите посылать около 10 000 строк через AJAX, если можете избежать этого (разбейте его на более мелкие запросы или используйте пейджинг).

4 голосов
/ 01 апреля 2010

Аналогичный вопрос

JSON похож на другие форматы данных, такие как XML - если вам нужно передавать больше данных, вы просто отправляете больше данных. Для самого запроса JSON нет ограничений по размеру. Любое ограничение будет установлено сервером, анализирующим запрос JSON. (Например, ASP.NET имеет свойство «MaxJsonLength» сериализатора.)

3 голосов
/ 01 апреля 2010

HTTP POST-запросы не имеют (разумных) ограничений по размеру.

Однако, если вы публикуете более 100 МБ данных, это вряд ли будет работать надежно.

1 голос
/ 01 апреля 2010

вы должны разбить строку на биты и выполнять несколько запросов ajax, пока строка не будет завершена. После добавления запросов временно добавляйте строковые биты в файл, а затем помещайте содержимое файла в базу данных.

1 голос
/ 01 апреля 2010

Я думаю, что самая большая слабость Json - это семантика.

В противном случае нет никаких ограничений, если вы используете HttpPost. Но, конечно, для лучшего пользовательского опыта, сделайте это проще и меньше.

Подробнее: http://blogs.oracle.com/bblfish/entry/the_limitations_of_json

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