$.ajax({
type: "POST",
url: "@Url.Action("SaveElectionData")",
dataType: "text",
data: { 'formData': sendData },
success: function (msg) {
alert("back in view, success");
$("form").submit();
},
error: function (req, status, error) {
alert("back in view, fail");
$("form").submit();
}
});
Когда я запускаю приложение, ajax отправляет данные на мой контроллер. Контроллер обрабатывает данные и возвращает строку в ajax. Я снова вижу предупреждение, успех. Как только я нажимаю кнопку, чтобы закрыть оповещение, я получаю ошибку 431.
Когда я смотрю на инструменты разработки и сеть, я вижу вот что:

И когда я нажмите «Обновлено», вот что я вижу:

Я запускаю это на машине разработки (Mac) под управлением Visual Studio 2022 и предполагаю, что IIS Express (предоставляется Visual Studio, если только на Mac он не отличается от Windows-машина), и я только что удалил файлы cookie браузера (хрома). Также, согласно второму изображению, длина содержимого заголовка запроса составляет всего 182.
А это код в представлении для формы:
@using (Html.BeginForm("Updated", "OnlineEnrollment", FormMethod.Post))
{
}
У меня нет никаких элементов в форме, поскольку ajax уже отправил данные контроллеру.
Так зачем мне это получать? Ошибка 431?
Есть идеи?
РЕДАКТИРОВАТЬ 1:
Это код в моей программе. cs выглядит так:
namespace AccuRecordV3
{
public class Program
{
public static void Main(string[] args)
{
CreateHostBuilder(args).Build().Run();
}
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup();
webBuilder.ConfigureKestrel((context, options) =>
{
options.Limits.Http2.MaxRequestHeaderFieldSize = 40960;
});
});
}
}
Подробнее здесь: https://stackoverflow.com/questions/738 ... pplication
Мобильная версия