Я написал веб-сервис. Я звоню на этот веб-сервис с помощью JavaScript. Я называю это из разных доменов. Для этого я добавил [System.Web.Script.Services.ScriptService]
недвижимость в веб-сервис. Из JavaScript я звоню в службу, используя XMLHttpRequest. Я тестировал его с помощью Firefox, и все было хорошо, когда. Но он не работал в IE.Вызов веб-службы перекрестного домена asmx с использованием JavaScript
После некоторого поиска я обнаружил, что это проблема, связанная с Перекрестный домен, вызывающий. Я рассмотрел некоторые из вопросов, размещенных здесь. И тогда я сделал следующие изменения в своем коде -
С JavaScript Я сейчас вызова службы с помощью XDomainRequest.
Я добавил следующие строки BEFOR заявления, возвращения в веб-сервис -
HttpContext.Current.Response.AppendHeader("Access-Control-Allow-Origin", "*"); HttpContext.Current.Response.AppendHeader("Access-Control-Allow-Credentials", "true"); return result;
Он все еще работает отлично в Firefox. но в IE8 (по моим сведениям, XDomainRequest не будет работать в более низких версиях IE), он показывает ошибку (XDomainRequest.onerror).
Я что-то упустил?
он пытается сделать запрос перекрестного домена - это не сработает. Кроме того, jQuery просто обертывает XHR. –
извините, исправлено! –
Важно понимать, что в плагине Джеймса используется YQL, чтобы отскакивать запросы через стороннюю третью сторону, которая дополняет их поддержкой JSONP, а не фактически решая основную проблему перекрестного происхождения. –