У меня есть пользовательский веб-сервис, развернутый в WSS 3. Он имеет два веб-метода.Проблемы с потреблением пользовательских веб-сервисов SharePoint - HTTP 401: Неавторизованный
Первый возвращает версию загруженной сборки без какого-либо вызова объектов SharePoint. Второй возвращает некоторые базовые информация о библиотеке, что-то вроде:
var spLibrary = [find library logic];
return spLibrary.Name+"@"+spLibrary.Url;
В приложении клиента у меня есть что-то вроде следующего:
var service = new WebService1();
service.Url = [url];
service.Credentials = System.Net.CredentialCache.DefaultCredentials;
service.Method1();
service.Method2();
Когда клиентское приложение работает на компьютере, где SharePoint является развернуто, все работает отлично.
Когда клиентское приложение работает на удаленной машине (но под тем же пользователем), первый метод все еще работает, а второй выдает System.Net.WebException: HTTP 401: неавторизованный.
Я попытался установить учетные данные вручную (service.Credentials = новый System.Net.NetworkCredential (логин, пароль, домен);), но это не помогает.
Я пытался вызвать встроенный веб-служб SharePoint, используя подобный сценарий
, и они прекрасно работают:
Извините за ошибку ... Некоторые методы не работают нормально, без соответствующих привилегий.
var service = new GroupsService();
service.Url = [url];
service.Credentials = System.Net.CredentialCache.DefaultCredentials;
service.SomeMethod();