Имам уеб сайт .NET 2.0 (VB), работещ в моя IIS6 (XP Pro SP2) и .NET 3.5 (конфигуриран като .NET2 под раздела ASP.NET на IIS, разбира се), който хоства ASMX уеб услуга.
В Chrome мога да се обадя на ASMX и да извикам успешно уеб методите. Въпреки това при извикване на уеб методите в кода, от уеб сайта .NET 2.0 получавам:
Заявката не бе успешна с HTTP статус 401: Неупълномощено.
Как да разбера това?
Отговори:
19 за отговор № 1Трябва да зададете идентификационните данни в приложението си, когато инициализирате webService
обект.
Нещо като webService.UseDefaultCredentials = true
Това ще зададе идентификационните данни на заявката на текущия потребител, изпълняващ приложението.
3 за отговор № 2
webService.UseDefaultCredentials = true
Това работи за мен.
2 за отговор № 3
В IIS 7 активирайте анонимното удостоверяване и трябва да можете да отстранявате грешки.
2 за отговор № 4
можете да използвате това:
webservice.UseDefaultCredentials = true;
ако не работи, използвайте следния код вместо горепосочения код
webservice.Credentials = new NetworkCredential("userName", "password", "domain");
webservice.PreAuthenticate = true;
Забележка: Потребителското име Парола и домейн са потребителските акредитиви на потребителя, който има достъп до уеб услугата
така че се уверете, че потребителят има разрешение за достъп до уеб услугата
може би потребителят е потребител на Windows
и можете да получите домейн от: щракнете с десния бутон в "MyComputer" и свойства домейнът е името на компютъра или работната група
0 за отговор № 5
im съм тест по този начин:
CheckListService.CheckList chkSrvice = new CheckListService.CheckList() {
UseDefaultCredentials = true };