Я пытаюсь отправить многочасовую форму с бинарной внутренней частью (70mib) на свой API, но я получаю два сообщения об ошибках, когда загрузка завершается: < /p>
> 'https://www.contoso.com' 'был заблокирован политикой CORS: No' Access-Control-Allow-Origin заголовок присутствует в запрошенном ресурсе.
post https://api.contoso.com/v1/controller/upload net :: err_failed 413 (запрос объекта слишком большой) < /p>
< /blockquote>
builder.Services.Configure(options =>
{
options.Limits.MaxRequestBodySize = long.MaxValue;
options.Limits.MaxRequestBufferSize = long.MaxValue;
});
builder.Services.Configure(options =>
{
options.MultipartBodyLengthLimit = 200 * 1024 * 1024; //200 MB
});
builder.Services.AddControllers();
builder.Services.AddEndpointsApiExplorer();
//DB connection
//Blob storage connection
//Auth/JWT
//Services/DI
var app = builder.Build();
app.Logger.LogInformation("Starting...");
< /code>
Когда в производстве: < /p>
app.Logger.LogInformation("Production mode");
app.UseCors(policyBuilder =>
{
policyBuilder.SetIsOriginAllowed((origin) => {
app.Logger.LogInformation("Origin of call: " + origin);
return origin.Equals("https://contoso.com") || origin.Equals("https://www.contoso.com");
})
.AllowAnyHeader().AllowAnyMethod().WithExposedHeaders("App-Desktop");
});
//Allow access by the desktop app to these endpoints.
app.Use(async (context, next) =>
{
if (context.Request.Headers.ContainsKey("App-Desktop"))
{
var path = context.Request.Path.Value?.ToLower() ?? "";
app.Logger.LogInformation("Path of call from desktop app: " + path);
if (path.StartsWith("/v1/blogs"))
context.Response.Headers.Append("Access-Control-Allow-Origin", "*");
}
await next();
});
< /code>
Действие контроллера, под вопросом: < /p>
[HttpPost("upload")]
[Consumes("multipart/form-data")]
//[RequestSizeLimit(209_715_200)] //200Mib
[DisableRequestSizeLimit]
public async Task UploadBinary(IFormFile file, [FromForm] BinaryRequest binary)
{
_logger.LogInformation("Uploading asset: " + file.FileName);
//...
}
< /code>
Проверка понимания API на Azure показывает мне эти 4 сообщения (сверху внизу): < /p>
Запуск запроса http / 1.1 Параметры https://api.contoso.com/v1/controller/upload - - -
Происхождение вызова: https://www.contoso.com < /p>
< /blockquote>
Успешное выполнение политики CORS. < /P>
< /blockquote>
Запрос завершен http /1.1 Опции https://api.contoso.com/v1/controller/upload - 204 - - 2,1230ms
Действие контроллера никогда не выполняется, поэтому « Загрузка актива «Сообщение никогда не регистрируется.
Никакая другая конечная точка не страдает от одной и той же проблемы (не проблема Cors). < /P>
Что может быть причиной этого? < /p>
Подробнее здесь: https://stackoverflow.com/questions/794 ... ce-but-not
Загрузка файла не сбои с 413 request intity слишком большой в службу приложений Azure, но не работает локально ⇐ C#
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Как устранить ошибку 413 Request Entity Too Large в веб-приложении Java в Azure?
Anonymous » » в форуме JAVA - 0 Ответы
- 29 Просмотры
-
Последнее сообщение Anonymous
-