Как избежать появления предупреждающего сообщения IE при использовании веб-службы с использованием jQuery - PullRequest
0 голосов
/ 04 августа 2010

кто-то любезно разместил следующее решение по использованию веб-служб из этого вопроса по этой ссылке:

Как использовать jQuery для вызова веб-службы ASP.NET?

function InfoByDate(sDate, eDate){
var divToBeWorkedOn = '#AjaxPlaceHolder';
var webMethod = 'http://MyWebService/Web.asmx/GetInfoByDates'
var parameters = "{'sDate':'" + sDate + "','eDate':'" + eDate + "'}"

$.ajax({
        type: "POST",
        url: webMethod,
        data: parameters,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function(msg) {    
                $(divToBeWorkedOn).html(msg.d);
        },
        error: function(e){
                $(divToBeWorkedOn).html("Unavailable");                          
        }
});

}

Все идет хорошо, и данные, которые мне нужны, возвращаются, НО, я всегда получаю предупреждение от IE о том, что «эта страница имеет доступ к информации, которая не находится под ее контролем. Это создает угрозу безопасности ... и т. Д., И с Opera информация не загружается из-за ошибки "Нарушение безопасности".

Как мне преодолеть это - мне действительно нужно придерживаться javascript, потому что код должен быть размещен на страницах, где у меня нет доступа к средствам программирования сервера.

Спасибо людям.

1 Ответ

1 голос
/ 04 августа 2010

Вы можете получить доступ к веб-сервисам только с вашего локального домена. Вам нужно будет создать локальный прокси, который будет передавать данные, возвращенные этим удаленным веб-сервисом. То есть, если веб-сервис действительно удален. Если нет, используйте относительный или абсолютный путь к ws.

...