Сбой запроса с состоянием HTTP 401: неавторизован - PullRequest
14 голосов
/ 19 июля 2010

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

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

Запрос не выполнен с состоянием HTTP 401: не авторизован.

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

Ответы [ 5 ]

20 голосов
/ 19 июля 2010

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

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

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

3 голосов
/ 05 июня 2013
webService.UseDefaultCredentials = true

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

3 голосов
/ 02 октября 2012

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

2 голосов
/ 27 июля 2016

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

webservice.UseDefaultCredentials = true;

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

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

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

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

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

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

0 голосов
/ 29 июня 2014

Я проверяю так:

CheckListService.CheckList chkSrvice = new CheckListService.CheckList() {
    UseDefaultCredentials = true };
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...