Я разрабатываю веб-приложение, используя HTML и JavaScript (jQuery), для связи с базой данных я использую веб-сервис .asmx в C#.
Развертывание моего приложения на локальном компьютере и локальном IIS работает нормально. Проблема в том, что теперь мне нужно развернуть свое приложение на веб-сервере компании, и теперь это происходит, когда каждый вызов ajax не работает и возвращает ошибку 401 . Что-то странное в том, что если я введу URL-адрес ajax (отображается веб-служба asmx), а затем вернусь на мой веб-сайт и перезагрузлю страницу, теперь все вызовы ajax работают. Например:
$.ajax({
url: "http://192.168.46.87/MyApp/ws_WebService.asmx/Login"
Этот вызов ajax возвращает ошибку 401, после этого, если я введу URL-адрес http://192.168.46.87/MyApp/ws_WebService.asmx, мой веб-сервис загружен и если я сейчас перезагружаю вкладку своей веб-страницы, ajax вызовы работают нормально.
Это мой ajax вызов:
function CallWM(webMethod, JSONToSend, callBackFunction, extraData) {
try {
$.ajax({
type: 'POST',
url: "http://192.168.46.87/MyApp/" + webMethod,
contentType: 'application/json',
dataType: 'json',
data: JSON.stringify(JSONToSend),
success: function (data, strErr, xhr) {
callBackFunction(data.d, extraData);
},
error: function (xhr, textStatus, errorThrown) {
bootbox.alert("Error calling the server!\n" + xhr.statusText);
console.log(xhr.statusText);
console.log(xhr);
$.unblockUI();
}
});
}
catch (err) {
bootbox.alert("Error calling the server!\n" + err.message);
$.unblockUI();
}
}
Я уже пытался изменить тип аутентификации на сервере IIS, отправив свои учетные данные с помощью вызова ajax, но я получаю то же сообщение об ошибке, что еще можно попробовать или в чем проблема?
PD. На моем локальном IIS работает отлично, проблема в том, что теперь я перемещаю свое приложение на веб-сервер.