Используйте в запросе параметр $select, чтобы получать значения только перечисленных в параметре свойств типа сущности.
Формат URL:
{Протокол https или http}://{имя сервера, на котором установлен сервис интеграции}/{имя сервиса интеграции}/odata/{Интерфейс типа сущности во множественном числе}?$select={Имя свойства 1},{Имя свойства 2}…
Пример:
GET /Integration/odata/ISimpleDocuments?$select=Id,Name,Created HTTP/1.1
Host: DirectumRXServer.com
Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=
Content-Type: application/json
Accept: application/json
Пример кода для создания аналогичного запроса, написанного на языке C# с использованием библиотеки Simple.OData.Client:
// URL сервиса интеграции.
private const string IntegrationServiceUrl = "https://DirectumRXServer.com/Integration/odata/";
// Логин для Basic-аутентификации.
private const string Login = "IntegrationUser";
// Пароль для Basic-аутентификации.
private const string Password = "11111";
// Настройки Simple OData Client: добавление URL сервиса и заголовка
// с данными аутентификации ко всем запросам.
var odataClientSettings = new ODataClientSettings(new Uri(IntegrationServiceUrl));
odataClientSettings.BeforeRequest += (HttpRequestMessage message) =>
{
var authenticationHeaderValue = Convert.ToBase64String(Encoding.UTF8.GetBytes($"{Login}:{Password}"));
message.Headers.Add("Authorization", "Basic" + authenticationHeaderValue);
};
var odataClient = new ODataClient(odataClientSettings);
// Создание запроса.
var document = await odataClient.For("ISimpleDocuments")
.Select("Id", "Name", "Created")
.FindEntriesAsync();
В ответе придет список всех простых документов (SimpleDocument) со свойствами Идентификатор (Id), Наименование (Name) и Дата создания документа (Created).
|
Если в запросе с параметром $select требуется получить значение свойства-ссылки, добавьте к запросу знак & и параметр $expand. Например, чтобы получить список всех простых документов со свойством Наименование (Name) и свойством-ссылкой Автор (Author), используйте запрос:
GET /Integration/odata/ISimpleDocuments?$select=Name&$expand=Author HTTP/1.1
Host: DirectumRXServer.com
Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=
Content-Type: application/json
Accept: application/json
Пример кода для создания аналогичного запроса, написанного на языке C# с использованием библиотеки Simple.OData.Client:
// URL сервиса интеграции.
private const string IntegrationServiceUrl = "https://DirectumRXServer.com/Integration/odata/";
// Логин для Basic-аутентификации.
private const string Login = "IntegrationUser";
// Пароль для Basic-аутентификации.
private const string Password = "11111";
// Настройки Simple OData Client: добавление URL сервиса и заголовка
// с данными аутентификации ко всем запросам.
var odataClientSettings = new ODataClientSettings(new Uri(IntegrationServiceUrl));
odataClientSettings.BeforeRequest += (HttpRequestMessage message) =>
{
var authenticationHeaderValue = Convert.ToBase64String(Encoding.UTF8.GetBytes($"{Login}:{Password}"));
message.Headers.Add("Authorization", "Basic" + authenticationHeaderValue);
};
var odataClient = new ODataClient(odataClientSettings);
// Создание запроса.
var document = await odataClient.For("ISimpleDocuments")
.Select("Name")
.Expand("Author")
.FindEntriesAsync();
© Компания Directum, 2024 |