Nancy максимальная исключительная длина JSON при привязке
У меня есть простой проект C# для собственного размещения Nancy, который десериализует данные в NancyModule следующим образом:
Post["/build"] = (something) => { var data = this.Bind<Brick>(); }
Я получаю "Превышена максимальная длина ввода JSON." когда Request.Body.Length близко к 2 МБ. Я хотел бы отправить десятки мегабайт данных в будущем, а 2 МБ слишком мало. Могу ли я снять этот лимит?
2 ответа
Решение
Вы можете переопределить MaxJsonLength и MaxRecursions. По сути, я сделал пользовательский загрузчик примерно так:
public class CustomBootStrapper : DefaultNancyBootstrapper
{
protected override void ApplicationStartup(TinyIoCContainer container, IPipelines pipelines)
{
Nancy.Json.JsonSettings.MaxJsonLength = int.MaxValue;
Nancy.Json.JsonSettings.MaxRecursions = 100;
Nancy.Json.JsonSettings.RetainCasing = true;
base.ApplicationStartup(container, pipelines);
}
}
Для меня Нэнси не работала все вместе даже после применения настроек ниже. Поскольку мои данные были действительно действительно огромны.
Nancy.Json.JsonSettings.MaxJsonLength = int.MaxValue;
Я закончил с использованием Json.net (добавить через пакет nuGet)
JsonConvert.SerializeObject(data)