使用Web服务时文档已移动错误

时间:2011-07-19 12:52:28

标签: c# visual-studio web-services visual-studio-2010 sharepoint-2010

我有一个Windows应用程序,我在其中添加了一个Web服务来共享Lists.asmx。

当我使用GetListItemChangesSinceToken()方法时,我收到错误:

The request failed with the error message:
--
<head><title>Document Moved</title></head>
<body><h1>Object Moved</h1>This document may be found <a HREF="http://localhost:333/Test/Forms/AllItems.aspx">here</a></body>
--.

我正在调用这样的方法:

public XmlNode GetListItems()
{
 XmlNode getFirstToken = null;
 try
 {
  getFirstToken = listService.GetListItemChangesSinceToken(
                           listName, null, null, null, null, null, currentToken, null);
 }
            ...
}

其中listName等于列表的guid,列表名称为“Test”。

任何人都知道这个错误意味着什么?怎么解决?

非常感谢。

2 个答案:

答案 0 :(得分:0)

我认为问题在于您的网络服务与您的Sharepoint位于同一个网络应用程序中 在这种情况下,Sharepoint拦截来自IIS的请求句柄并尝试自己解决它。但它无法做到,并将您重定向到其默认页面 将您的Web服务移出IIS中的Sharepoint站点,然后重试。


更新: 根据您的评论,listService对象的地址等于您的sharepoint站点的默认地址。因此,您应该获得真实的服务地址,以.asmx结尾,并将其设置为listService对象。

答案 1 :(得分:0)

请检查该网络服务&#39; url&#39;是正确的,它不受目标网站重定向的影响。 (例如,如果非www请求被定向到www,并且您使用的是非www格式,则可能会遇到此问题)