从SOAP信封中获取数据

时间:2012-05-17 12:52:32

标签: javascript sharepoint soap sharepoint-2007 windows-desktop-gadgets

我正在尝试使用sharepoint列表填充小工具,但我找不到谷歌的任何方法或教程来帮助我,但是我发现这个教程正在获取新闻网站的XML反馈,并且将它们显示在列表中。

Tutorial for Making a Gadget that gets XML feedbacks off a news Site

现在,我希望本教程能够显示我将从这段代码中获取的XML文档项,而不是从该新闻网站获取XML反馈,

$(document).ready(function() 
{
    var soapEnv =
        "<soapenv:Envelope xmlns:soapenv='http://schemas.xmlsoap.org/soap/envelope/'> 
            <soapenv:Body> 
                 <GetListItems xmlns='http://schemas.microsoft.com/sharepoint/soap/'> 
                    <listName>ListName</listName> 
                    <viewFields> 
                        <ViewFields> 
                           <FieldRef Name='Title' /> 
                       </ViewFields> 
                    </viewFields> 
                </GetListItems> 
            </soapenv:Body> 
        </soapenv:Envelope>";

    $.ajax({
        url: "http://my_site/_vti_bin/lists.asmx",
        type: "POST",
        dataType: "xml",
        data: soapEnv,
        complete: processResult,
        contentType: "text/xml; charset="utf-8""
    });
});

function processResult(xData, status) {
    $(xData.responseXML).find("z\:row").each(function() {
        alert($(this).attr("ows_Title"));
    });
}

我不知道如何才能做到这一点,但请你至少引导我,我怎样才能完成这项任务,+我应该调查或学习什么,因为谷歌没有帮助我查询完全:/。

1 个答案:

答案 0 :(得分:2)

使用SPServices库不是使用soap请求和通过/_vti_bin/lists.asmx查询,而是使用{{3}}库,这是获取数据而不需要深入研究soap请求的最简单方法。有很多简单的例子,试一试!

但是,如果必须坚持使用soap,那么有两种工具可以帮助您soapUIfiddler

在soapUI的帮助下,您可以轻松地从您拥有的网址创建肥皂请求。您可以使用fiddler检查请求和响应。

如果您有更多问题,请与我们联系