1

我了解使用托管客户端对象模型通过 Web 服务与服务器端对象模型通信。但我找不到任何关于这是 RESTful 还是 SOAP 服务的文档。有谁知道有关此服务架构的任何文档?

4

1 回答 1

2

好问题。

以这段代码为例:

 using (ClientContext clientContext = new ClientContext(siteUrl))
        {
            clientContext.Credentials = getServiceAccountCredential();

            SP.List invoicesList = clientContext.Web.Lists.GetByTitle("Approved Invoice Allocations");

            CamlQuery camlQuery = new CamlQuery();
            camlQuery.ViewXml = @"<View> <Query> <Where> <Eq> <FieldRef Name='Invoice_x0020_ID'/> <Value Type='Lookup'>" + invoice_id +
                                "</Value> </Eq> </Where> </Query> <RowLimit>1000</RowLimit> </View>";
            ListItemCollection collListItems = invoicesList.GetItems(camlQuery);

            clientContext.Load(collListItems);
            clientContext.ExecuteQuery();
        } 

在执行 clientContext.ExecuteQuery 或 ExecuteQueryAsync 时查看Fiddler工具中的请求和响应标头,以下是一些观察结果

1) POST 请求被发送到 SharePoint REST 服务 webUrl/_vti_bin/client.svc/ProcessQuery

2) 发送的请求是 XML 格式

3) 响应为 JSON 格式

有关详细信息,请参阅MSDN 文章

于 2012-05-11T13:52:23.073 回答