Ajax ошибка возврата вызова 401 Несанкционированный - PullRequest
0 голосов
/ 07 января 2020

Я разрабатываю веб-приложение, используя 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 работает отлично, проблема в том, что теперь я перемещаю свое приложение на веб-сервер.

1 Ответ

0 голосов
/ 08 января 2020

наконец я могу решить эту проблему, и вот решение в моем случае .

В моем пути к приложению у меня есть Web.config, где у меня нет ничего, связанного с аутентификацией, но Я обнаружил, что в папке приложений IIS inetpub root есть еще один файл Web.config, и в этом файле я увидел, что в аутентификации есть что-то, что решило мою проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...