ASP.NET Windows аутентификация + AJAX = 403 код ошибки - PullRequest
0 голосов
/ 07 января 2019

Я использую аутентификацию Windows asp.net на моем веб-сайте. После проверки подлинности веб-сайт функционирует нормально (разрешены даже запросы ajax).

Но через некоторое время, когда я выполняю ajax-вызовы на сервер, сервер возвращает код состояния 403 (неавторизованный).

В чем причина и как я могу это исправить?

вот случай:

1 - сначала я захожу с учетными данными LDAP

enter image description here

2 - открывается страница, содержащая кнопку для извлечения данных с помощью ajax

enter image description here

3-При нажатии на кнопку извлекаются данные. НО после нахождения веб-сайта в режиме ожидания на некоторое время без каких-либо запросов к серверу AJAX-вызовы возвращают статус 403 (Запрещено)

enter image description here

Обратите внимание, когда я перенаправляю на другие страницы, все нормально. У меня нет возвращенного кода состояния 403.

и вот запрос ajax:

$.ajax({
        url: '/GetFilteredRecords/', 
        data://filter goes here,
        type: 'GET',
        success: function (result) { 
           //display result
        },
        error: function (result) {
           alert("something went wrong");
        }
});

1 Ответ

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

Это нормальное поведение при аутентификации Windows. Аутентификация Windows поддерживает несколько протоколов аутентификации - Kerberos, NTLM, возможно, другие. Ваш браузер пробует один метод аутентификации, а когда он терпит неудачу, он пробует другой, пока не преуспеет. Ты не должен беспокоиться об этом. Как видите, второй запрос на тот же URL завершается успешно. Вы можете посмотреть заголовки аутентификации каждого запроса, чтобы увидеть, что именно он делает.

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