我试图在SharePoint 2007中使用owssvr.dll and its URL API来获取一些列表元数据。这是我感兴趣的网站大部分的名单,我可以使用格式化像这样一个网址:为什么owssvr.dll为我的列表返回空结果?
http://hts-app1/compounds/_vti_bin/owssvr.dll?XMLDATA=1&List={F987723C-28A4-47D3-83D7-19094B0267DF}
我回来默认视图字段元数据的基于XML的列表和记录列表中的一个列表。但是,当我尝试使用另一个GUID作为单独的列表时,我从Web服务器收到一个空的响应。这是一个200响应代码,但是对方头的样子:
Connection:close
Date:Thu, 24 Mar 2011 17:38:46 GMT
MicrosoftSharePointTeamServices:12.0.0.4518
Server:Microsoft-IIS/6.0
X-Powered-By:ASP.NET
我敢肯定列表GUID是有效的,因为我可以用的GUID列表,我可以在listedit.aspx页面看到它相匹配。如果我还格式化我的网址,像这样:与Query=*
参数
http://hts-app1/compounds/_vti_bin/owssvr.dll?XMLDATA=1&List={F987723C-28A4-47D3-83D7-19094B0267DF}&Query=*
,我能得到有效的XML,但它只是显示的一切,并不能过滤以我的看法,我真的很想有看法。
我查看了SharePoint日志文件,但找不到与此请求相关的任何内容。
那么,我该如何调试呢?我真的想用一个简单的http GET请求来取回这个元数据,而owssvr.dll似乎是理想的机制。
感谢您的回复。我确定guid是正确的,因为当我在url中添加'query = *'时,我可以看到正确的列表元数据。这些列表都在同一个SPWeb中。至于你的#2点,我同意。我最终不想使用'Query = *',但我只是想表明我确实可以通过这种方式获得正确的原始列表数据。我尝试了#3建议,并得到了与没有'Cmd'参数相同的行为。对于#4,我列表的默认视图确实是根据字段值进行行筛选(以及包含更少的显示列),这是我想在此使用视图的一个关键原因。 – 2011-03-25 03:21:22