我正在使用SharePoint列表Web服务在SharePoint服务器上进行一些查询。当提供具有所需输入参数的IP地址的绝对URL时,似乎工作正常。例如,http://192.168.1.114/sites/myteam/Shared Documents/foo.txt
。但是,如果将其替换为:http://servername/sites/myteam/Shared Documents/foo.txt
,则抛出SoapServerException。
我在调用CheckInFile
方法时遇到了这些问题。如果我用IP地址输入文件名,它可以正常工作。如果我使用服务器名称输入文件名,则会抛出SoapServerException
。
调用UpdateListItems
时出现同样的问题。我使用字符串参数如下:
string strBatch = "<Method ID='1' Cmd='Delete'>" +
"<Field Name='ID'>3</Field>" +
"<Field Name='FSObjType'>0</Field>" +
"<Field Name='FileRef'>" + sFileName + "</Field>" +
"</Method>";
如果我用绝对URL替换sFileName
和IP地址,它可以正常工作。如果我用带有服务器名称的绝对URL替换sFileName
,它返回了一个错误代码为0x81020030的XML节点,错误消息如下:
文件名无效。您指定的文件名无法使用。它 可能是现有文件或目录的名称,或者您可能没有 访问该文件的权限。
我们不确定列表Web服务是否带来此问题,或者我们的DNS设置是否不正确。任何意见将不胜感激。
答案 0 :(得分:0)
在管理中心检查Alternate Access Mappings
。您必须确保它包含正确的主机名引用 - 您要在此处引用的引用。