Minor fixes in REST API doc

This commit is contained in:
Konstantin Krivopustov 2013-06-07 13:38:21 +00:00
parent 980d0b1a42
commit 86cb8af47e

View File

@ -9982,13 +9982,13 @@ taskHandler.execute();</programlisting><para>Подробная информац
<title>REST API</title>
<section>
<title>Общие сведения</title>
<para>Универсальный REST API платформы позволяет выполнять загрузку и сохранение любых сущностей модели данных приложения посредством отправки простых HTTP запросов. Это открывает возможность легкой интеграции со сторонними приложениями самого широкого спектра от JavaScript кода, выполняющегося в браузере, до произвольных систем, работающих на Java, NET, PHP или любой другой платформе. </para>
<para>Универсальный REST API платформы позволяет выполнять загрузку и сохранение любых сущностей модели данных приложения посредством отправки простых HTTP запросов. Это открывает возможность легкой интеграции со сторонними приложениями самого широкого спектра от JavaScript кода, выполняющегося в браузере, до произвольных систем, работающих на Java, .NET, PHP или любой другой платформе. </para>
<para>Основные возможности API:<itemizedlist>
<listitem>
<para>загрузка экземпляров сущностей из базы данных по идентификатору или по JPQL запросу с параметрами</para>
</listitem>
<listitem>
<para>сохранение новых и измененных экземпляров, удаление</para>
<para>сохранение новых и измененных экземпляров, удаление экземпляров</para>
</listitem>
<listitem>
<para>получение описания модели данных в формате HTML</para>
@ -10019,7 +10019,7 @@ taskHandler.execute();</programlisting><para>Подробная информац
<section>
<title>Описание функций</title>
<para>При стандартных настройках модуля <structname>portal</structname> все запросы к REST API должны иметь URL, начинающийся с <literal>{host:port}/app-portal/api</literal>.</para>
<para>Все функции требуют наличия сессии аутентифицированного пользователя, то есть необходимо выполнить логин.</para>
<para>Все функции требуют наличия сессии аутентифицированного пользователя, то есть сначала необходимо выполнить логин, и передавать полученный идентификатор сессии в последующие запросы.</para>
<section>
<title>Логин</title>
<para>Логин можно выполнить либо GET, либо POST запросом.</para>
@ -10060,7 +10060,7 @@ locale: en</programlisting>
</listitem>
</varlistentry>
</variablelist>
<para>В ответ сервис вернет <code>userSessionId</code> в теле ответа и статус 200 или статус 401, если аутентификация не удалась.</para>
<para>В ответ сервис вернет <code>userSessionId</code> в теле ответа и статус 200, либо статус 401, если аутентификация не удалась.</para>
</section>
<section>
<title>Загрузка экземпляра персистентного объекта из базы данных по идентификатору</title>
@ -10073,7 +10073,7 @@ locale: en</programlisting>
<para><emphasis role="bold">s</emphasis> идентификатор текущей сессии.</para>
</listitem>
</itemizedlist>
<para><emphasis role="bold">format</emphasis> задает формат получения результата. Принимает два значения: <code>xml</code> или <code>json</code>.</para>
<para>Элемент запроса <emphasis role="bold">format</emphasis> задает формат получения результата. Принимает два значения: <code>xml</code> или <code>json</code>.</para>
<para>Пример запроса, возвращающего результат в формате <code>xml</code>:</para>
<programlisting>http://localhost:8080/app-portal/api/find.xml?e=sales$Order-60885987-1b61-4247-94c7-dff348347f93-orderWithCustomer&amp;s=c38f6bf4-fae7-4ee6-a412-9d93ff243f23</programlisting>
<para>Пример запроса, возвращающего результат в формате <code>json</code></para>
@ -10109,11 +10109,11 @@ locale: en</programlisting>
<para>Для каждого из передаваемых параметров можно явно указать его тип, добавив в запрос одноименный параметр с суффиксом <code>_type</code>. Например:</para>
<programlisting>http://localhost:8080/app-portal/api/query.json?e=sales$Customer&amp;q=select%20c%20from%20sales$Customer%20c%20where%20c.name=:specName&amp;s=748e5d3f-1eaf-4b38-bf9d-8d838587367d&amp;specName=Петров&amp;specName_type=string</programlisting>
<para>Указание типа параметра не является обязательным, но позволяет избежать ошибок парсинга, если система не сможет определить тип.</para>
<para>В общем случае тип стоит указывать лишь для строковых параметров, которые по какой-либо причине имеют формат более узких типов (даты, чисел, uuid), но должны интерпретироваться именно как строки.</para>
<para>В общем случае тип стоит указывать лишь для строковых параметров, которые по какой-либо причине имеют формат более узких типов (дат, чисел, uuid), но должны интерпретироваться именно как строки.</para>
<para>Список доступных типов можно увидеть в описании мета-модели (пункт меню <guimenu>Помощь</guimenu> &gt; <guimenu>Модель данных</guimenu>) или получив <link linkend="getHTMLModel">HTML-описание модели</link>.</para>
</section>
<section>
<title>Коммит новых или измененных экземпляров, удаление</title>
<title>Коммит новых и измененных экземпляров, удаление</title>
<para>Функция коммита позволяет выполнять операции над переданными ей объектами и возвращает их старое и новое состояния. Формат результата определяется тем, какой формат (JSON или XML) был использован для запроса (заголовок <code>Content-Type</code>). </para>
<variablelist>
<varlistentry>
@ -10135,7 +10135,7 @@ locale: en</programlisting>
}</programlisting>
<para>Массив <code>commitInstances</code> содержит создаваемые или изменяемые сущности. Для создаваемой сущности в поле <code>id</code> используется префикс <code>NEW-</code>: <code>NEW-&lt;entityName&gt;</code> или <code>NEW-&lt;entityName&gt;-&lt;uuid&gt;</code>. Для модифицируемых сущностей здесь указывается значение <code>&lt;entityName&gt;-&lt;uuid&gt;</code>.</para>
<para>Массив <code>removeInstances</code> содержит удаляемые объекты. Перед удалением будет выполнен <code>merge()</code> переданных объектов, что позволяет, например, проверить, не изменилась ли версия удаляемого объекта.</para>
<para>Булевское поле <code>softDeletion</code> говорит о том, что экземпляры будут лишь помечены как удаленные без их реального удаления.</para>
<para>Поле <code>softDeletion</code> управляет режимом <link linkend="soft_deletion">мягкого удаления</link>.</para>
</listitem>
</varlistentry>
<varlistentry>