surajemo Ответов: 0

Кросс-доменный запрос не работает в Windows-версии Safari в 51.1.7


Кросс-доменный запрос не работает в Windows сафари я делаю кросс-доменный запрос, чтобы загрузить файл я использую плагин Plupload для загрузки файла . Это прекрасно работает в chrome, однако когда я запускаю safari, я получаю ' Origin http://localhost не допускается Access-Control-Allow-Origin.'. Я установил кеш на сервере.

Это заголовки запросов

Происхождение: http://localhost
Пользовательский агент: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/534.57.2 (KHTML, как Gecko) версия / 5.1.7 Safari/534.57.2
Тип содержимого: multipart/данные формы; граница=----WebKitFormBoundaryLUZFR1paN3ARVMrv
Реферер: http://localhost/PetaTracker/UploadView/machineView/LargeFile

Что я уже пробовал:

protected void Application_BeginRequest(object sender, EventArgs e)
        {
            try
            {
               EnableCrossDomainAjaxCall();
            }
            catch (Exception ex)
            { 
                ErrorHandlerTools.LogError(ex);
            }
        }
 private void EnableCrossDomainAjaxCall()
        { 
           // if (ValidateRequest())
          //  {
                HttpContext.Current.Response.Headers.Remove("Access-Control-Allow-Origin");
                Response.AddHeader("Access-Control-Allow-Origin", "*");

                if (HttpContext.Current.Request.HttpMethod == "OPTIONS")
                {
                    HttpContext.Current.Response.StatusCode = (int)HttpStatusCode.OK;
                    HttpContext.Current.Response.Headers.Remove("Access-Control-Allow-Methods");
                    HttpContext.Current.Response.AddHeader("Access-Control-Allow-Methods", "HEAD, GET, PUT, POST, COPY, OPTIONS, DELETE");

                    HttpContext.Current.Response.Headers.Remove("Access-Control-Allow-Credentials");
                    HttpContext.Current.Response.AddHeader("Access-Control-Allow-Credentials", "true");

                    HttpContext.Current.Response.Headers.Remove("Access-Control-Allow-Headers");
                    HttpContext.Current.Response.AddHeader("Access-Control-Allow-Headers", "origin,x-requested-with,content-Type,accept,x-auth-token,x-custom-header");

                    HttpContext.Current.Response.Headers.Remove("Access-Control-Max-Age");
                    HttpContext.Current.Response.AddHeader("Access-Control-Max-Age", "1728000");

                    HttpContext.Current.Response.End();
                } 
            //}
        }

Prateek Dalbehera

в конфигурации сервера вы использовали " * " или ограничивались каким-то конкретным доменом?? кроме того, проверьте аннотации в определении метода в коде на стороне сервера

surajemo

На самом деле в CORS не было никаких проблем проблема заключалась в том что браузер не поддерживал объект FileReader я загружал большие файлы разбивая их на куски но браузер не поддерживал File Reader

0 Ответов