Подтвердить что ты не робот

Ошибка запроса с состоянием HTTP 401: Неавторизованный

У меня есть веб-сайт .NET 2.0 (VB), работающий на моем IIS6 (XP Pro SP2) и .NET 3.5 (настроенный как .NET2 на вкладке IIS ASP.NET, конечно), на котором размещен веб-сервис ASMX.

В Chrome я могу вызвать ASMX и успешно запустить веб-методы. Однако при вызове веб-методов в коде с веб-сайта .NET 2.0 я получаю:

Ошибка запроса с состоянием HTTP 401: неавторизованный.

Как мне обойти это?

4b9b3361

Ответ 1

Вам нужно установить учетные данные в своем приложении, когда вы инициализируете объект webService.

Что-то вроде webService.UseDefaultCredentials = true

Это установит учетные данные запроса для текущего пользователя, выполняющего приложение.

Ответ 2

webService.UseDefaultCredentials = true

Это сработало для меня.

Ответ 3

вы можете использовать это:

webservice.UseDefaultCredentials = true;

, если не работает, используйте приведенный ниже код вместо кода выше

webservice.Credentials = new NetworkCredential("userName", "password", "domain");
webservice.PreAuthenticate = true;

Примечание: имя пользователя Пароль и домен - это учетные данные пользователя, которые имеют доступ к веб-сервису

поэтому убедитесь, что у пользователя есть разрешение на доступ к веб-службе

возможно, пользователь является пользователем Windows

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

Ответ 4

В IIS 7 включите анонимную аутентификацию, и вы должны иметь возможность отлаживать.

Ответ 5

im am test следующим образом:

CheckListService.CheckList chkSrvice = new CheckListService.CheckList() {
    UseDefaultCredentials = true };