我们有一个应用程序,它定期从SharePoint列表中提取数据并与另一个应用程序集成。我们已经使用它超过一年没有问题。然而,最近我们改变了我们的服务器场以使用基于声明的身份验证......然后就开始了应用程序。
我的代码在高级别上执行以下操作:
SPWebRefs.Lists spl = new SPWebRefs.Lists();
spl.Credentials = System.Net.CredentialCache.DefaultCredentials;
//Build request here
XmlNode listItems = spl.GetListItems("My list", view, query, viewFields, null, queryOptions, null);
我在那里得到"Exception of type 'Microsoft.SharePoint.SoapServer.SoapServerException' was thrown"
例外。
我正在通过Fiddler,我得到了401挑战,然后迅速跟着200响应,我认为这意味着我在。但是一旦调用了GetListItems方法,我就会得到500错误。< / p>
我已经尝试过对抗2010年的实例以及我们准备部署的2013年农场。同样的情况。
我现在正在使用4.0 Framework,但我考虑过对4.5 Framework进行测试,其中包括一些用于声明身份验证的新API。这有什么不同吗?
任何想法都将不胜感激。非常感谢提前!
答案 0 :(得分:1)
您必须先调用SharePoint身份验证Web服务。您将从中获取一个cookie,您可以将其传递给Lists WebService。