Отправка большого (40 МБ) MultipartFormDataContent в ASP. NET Core 3.1 возвращает 413 - RequestEntityTooLarge - PullRequest
0 голосов
/ 03 февраля 2020

Этот код:

var bytes = new ByteArrayContent(File.ReadAllBytes(targetDir + "../deploy.release.zip"));
var multiContent = new MultipartFormDataContent {{bytes, "version", "deploy.release.zip" } };
var upload = await http.PostAsync($"{host}API/files/Upload/ENG", multiContent);

работает в ASP. NET Core 2.2 через Kestrel.

После обновления до ASP. NET Core 3.1 и InProcess модель хостинга, я получаю (для файла 40 МБ):

413 - RequestEntityTooLarge

Я уже установил requestFiltering, но это не помогает. Мой web.config:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <!--
    Configure your application settings in appsettings.json. Learn more at https://go.microsoft.com/fwlink/?LinkId=786380
  -->
  <system.webServer>
    <handlers>
      <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
    </handlers>
    <aspNetCore 
          processPath="dotnet" 
          arguments=".\Web.Hosting.dll" 
          stdoutLogEnabled="true" stdoutLogFile="..\logs\stdout" 
          requestTimeout="23:00:00" 
          forwardWindowsAuthToken="false" 
          startupTimeLimit="3600" 
          hostingModel="InProcess">
      <environmentVariables>
        <environmentVariable name="ASPNETCORE_ENVIRONMENT" value="Production" />
        <environmentVariable name="ASPNETCORE_HTTPS_PORT" value="50374" />
        <environmentVariable name="COMPLUS_ForceENC" value="1" />
      </environmentVariables>
    </aspNetCore>
    <security>
      <requestFiltering>
        <!-- Measured in Bytes 100MB -->
        <requestLimits maxAllowedContentLength="104857600" />
      </requestFiltering>
    </security>
  </system.webServer>
</configuration>

Я что-то пропустил? Поиск по inte rnet дает мне результат для WCF, старый ASP. NET ...

Я также пытаюсь добавить <serverRuntime uploadReadAheadSize="10485760" />, но мое приложение не удалось с 500.19.

Отредактировано:

IIS распознает 100 МБ, но загрузка чего-либо более 20 МБ завершается неудачно с 413. IIS

...