У меня тут большие неприятности. У меня есть приложение .Net MVC 4, которое использует пользовательский интерфейс Kendo в качестве основы макета и для загрузки. Загрузка работает нормально во всех браузерах, за исключением IE9 (9.0), работающего на Windows Server 2008 RC2 x64
— я действительно не знаю, важна ли эта информация.
Это дает мне ошибку SCRIPT5: Access Denied
, когда Кендо пытается отправить асинхронный вызов. Согласно этот пост Член Telerik на форумах пользовательского интерфейса кендо, Кендо создает iframe
, чтобы сделать возможной асинхронную загрузку в предыдущих версиях IE10.
Я попытался добавить заголовок в веб-конфиг API:
<customHeaders>
<add name="Access-Control-Allow-Credentials" value="true" />
<add name="X-Frame-Options" value="ALLOW-FROM *"/>
</customHeaders>
Другие заголовки для CORS
имплицитно устанавливаются для CORS Handler Class
, например это в API.
Итак, я вижу этот заголовок в заголовках ответа на запрос IE, поэтому IE извлекает его. Я не знаю поддержки - особенно в IE - для значения ALLOW-FROM
ни в том случае, если он принимает *
. Но я попытался использовать значение SAMEORIGIN
для этого заголовка, и это не сработало, и у меня есть причина для этого: Мой WebApi не находится по тому же адресу, что и внешний интерфейс. Они находятся на разных серверах. и адреса. Загрузка отправляется непосредственно в API по этому URL-адресу:
http://dev.******.com/webserviceapi/api/UserProfile/Upload
И Front-End находится в:
http://dev.******.com/portal/
Скрытый контент в URL одинаков для обоих адресов.
Поэтому я понятия не имею, как этого добиться. Эта ошибка не соответствует ничему, что я нашел в Интернете. Любая помощь будет очень признательна!! Заранее спасибо.