Поделиться через


Использование OData с REST служб Excel в SharePoint

В SharePoint Server 2010 появились API REST для использования при получении информации из книг и записи в книги Excel, которые хранятся в библиотеках документов SharePoint. SharePoint добавляет новый способ запроса данных из служб Excel с использованием протокола открытых данных (OData), с помощью которого можно получить информацию о ресурсах служб Excel. Эта новая служба значительной степени опирается на существующий Службы Excel API-Интерфейс REST.Здесь приводится высокоуровневый обзор использования OData в Службы Excel.

Примечание.

REST API служб Excel применим к локальным развертываниям SharePoint и SharePoint 2016. Для учетных записей Office 365 для образования, Office 365 бизнес и Office 365 корпоративный используйте REST API Excel, входящие в состав конечной точки Microsoft Graph.

Что такое OData?

OData является протоколом открыть веб-узел для запроса и изменения данных. Он используется RESTful подход для возврата данных ресурсы в Интернете. То есть использовать URI с помощью параметров запроса, включенные для получения сведений о определенного ресурса.

Дополнительные сведения об OData см. на веб-сайте спецификации Open Data Protocol.

Как использовать OData со службами Excel?

В случае Службы Excel использовать OData для получения сведений о таблиц (включая таблицы запросов) в книге, которая хранится в библиотеке SharePoint. Служба OData возвращает запрашиваемых в данных в формате XML Atom.

Синтаксис запросов OData в службы Excel

SharePoint представляет каждой книге как отдельный ресурс, который можно запросить сведения из. В этом выпуске SharePoint Server вы можете получить данные из таблиц в книге.

Для получения данных из книги Excel, создания URL-адрес, указывающий на книгу и, которое указывает, какие данные, чтобы получить из книги, а также упорядочить эти данные. Например чтобы получить сведения о Table1 в книгу с именем ProductSales.xlsx, которая хранится в библиотеке SharePoint в папку с именем документы, используется URL-адрес, следующим образом.

http://<serverName>/_vti_bin/ExcelRest.aspx/Documents/ProductSales.xlsx/OData/Table1

Дополнительные сведения о том, как использовать OData для запроса сведений из книги Excel, хранящейся в SharePoint Server, см. в разделе Запрос данных книги Excel из SharePoint Server с помощью OData.

Данные, возвращаемые OData

После выполнения запроса OData для Службы Excel, он возвращает XML в формате Atom. Формат Atom является единственным форматом, поддерживаемые в реализации Службы Excel OData. Например ниже показан запрос OData для первой строки в первой таблице (с именем Table1) в книгу с именем WindowsPhoneComparison.xlsx.

http://<serverName>/_vti_bin/ExcelRest.aspx/Documents/WindowsPhoneComparison.xlsx/odata/Table1

Затем службы Excel возвращают Atom XML, показанный в приведенном ниже коде.


<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<entry xml:base="http://{serverName}/_vti_bin/ExcelRest.aspx/Documents/WindowsPhoneComparison.xlsx/OData" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" m:etag="W/&amp;quot;datetime'0001-01-01T00%3A00%3A00'&amp;quot;" xmlns="http://www.w3.org/2005/Atom">
  <id>http://{serverName}/_vti_bin/ExcelRest.aspx/Documents/WindowsPhoneComparison.xlsx/OData/Table1(0)</id>
  <title type="text"></title>
  <updated>0001-01-01T00:00:00-08:00</updated>
  <author>
    <name />
  </author>
  <link rel="edit" title="Table1Item" href="/Table1(0)" />
  <category term="ExcelServices.Table1Item" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme" />
  <content type="application/xml">
    <m:properties>
      <d:Phone>Samsung Focus</d:Phone>
      <d:sizeweight m:type="Edm.Double">4</d:sizeweight>
      <d:camera m:type="Edm.Double">2.5</d:camera>
      <d:battery m:type="Edm.Double">3</d:battery>
      <d:memory m:type="Edm.Double">3</d:memory>
      <d:speed m:type="Edm.Double">3</d:speed>
      <d:style m:type="Edm.Double">3</d:style>
      <d:callquality m:type="Edm.Double">3</d:callquality>
      <d:overall m:type="Edm.Double">3</d:overall>
      <d:excelRowID m:type="Edm.Int32">0</d:excelRowID>
    </m:properties>
  </content>
</entry>

Заключение

OData предоставляет простой способ получения данных из Excel книг, хранящихся на SharePoint. С помощью простого синтаксиса, на основе веб-стандартов, как HTTP и REST, OData позволяет быстро и легко получить данные из Excel книг.

См. также