net :: ERR_CONNECTION_RESET / net :: ERR_SPDY_PROTOCOL_ERROR для большого объекта Json - PullRequest
0 голосов
/ 12 декабря 2018

Я пытаюсь разрешить пользователю редактировать и сохранять роли пользователя.Внутри этих ролей существуют различные типы объектов, на которые им разрешено иметь права CRUD.Когда я передаю данные из полимера в контроллер через iron-ajax, они проходят правильно, за исключением случаев, когда для многих из этих объектов установлены права CRUD.Эти объекты и их права CRUD отправляются в виде JSON-строки в метод контроллера.

Для небольшого количества (например, 30 элементов с CRUD и 2 других права) он работает успешно.Контроллер получает запрос правильно и роль сохраняется.

Однако, как только я пытаюсь пройти через большое количество (например, 100 элементов с CRUD и 2 других права), возникает следующая ошибка:

net::ERR_CONNECTION_RESET Error enter image description here

Я пробовал комбинации настроек handle-as и content-type в определении iron-ajax,использование params против body в вызове ajax и наличие метода контроллера с атрибутом [HttpPost] и без него.

Код Iron-Ajax:

<iron-ajax id="saveRole"
           url="[[_getUrl('Roles/SaveRole')]]"
           method="POST"
           handle-as="json"
           on-response="_handleSavedRole"
           on-error="_handleSavedRoleError">
</iron-ajax>

ВызовФункция:

this.$.saveRole.params = { id: this.data.Id, name: this.data.Name, unitPermissions: JSON.stringify(this.data.UnitPermissions), projectPermissions: JSON.stringify(this.data.ProjectPermissions) };
this.$.saveRole.generateRequest();

Метод контроллера Подпись:

[HttpPost]
public ActionResult SaveRole(String id, String name, String unitPermissions, String projectPermissions)

Редактировать:

Использование принятого ответа на Как настроитьweb.config, чтобы разрешить запросы любой длины , возникающая ошибка изменилась на следующее:

enter image description here enter image description here

Редактировать:

На другом компьютере я получаю другую ошибку для некоторых запросов среднего размера (от 75 доnd 100):

enter image description here

Я попытался исправить это с помощью следующего в моем файле web.config, но это не сработало.

<requestLimits maxAllowedContentLength="1073741824" maxQueryString="2097151"/>
...