Ошибка CORS, когда я загружаю большой файл как составную часть в ASP.NET Web API 2 - PullRequest
0 голосов
/ 04 февраля 2019

Я получаю сообщение об ошибке CORS (Cross-origin) при загрузке большого файла размером более 500 МБ в виде данных Multipart.но все работает, когда я загружаю файл размером менее 500 МБ и успешно сохраняю.Кроме того, все мои другие запросы POST работают хорошо.

Я также включил CORS, используя пакет nuget в WebAPI:

Install-Package Microsoft.AspNet.WebApi.Cors

WebAPIConfig.cs:

 config.Formatters.JsonFormatter.SupportedMediaTypes.Add(new MediaTypeHeaderValue("text/html"));
            var enableCorsAttribute = new EnableCorsAttribute("*",
                                              "Origin, Content-Type, Accept",
                                              "GET, PUT, POST, DELETE, OPTIONS");
            config.EnableCors(enableCorsAttribute);  

И поверх контроллера я написал:

[EnableCors(origins: "*", headers: "*", methods: "*")]  

Ошибка:

Доступ к XMLHttpRequest в «http://localhost:55425/api/MediaUpload' от источника»http://localhost:4200' заблокировано политикой CORS: в запрошенном ресурсе отсутствует заголовок «Access-Control-Allow-Origin».

Я также увеличил maxRequestLength="30000000" и <requestLimits maxAllowedContentLength="1073741825"/>.

1 Ответ

0 голосов
/ 04 февраля 2019

Не могли бы вы попытаться добавить следующую конфигурацию в разделе 'system.webServer' вашего клиентского приложения web.config -

<httpProtocol>
    <customHeaders>
       <add name="Access-Control-Allow-Origin" value="*" />
    </customHeaders>
</httpProtocol>    

спасибо

...