Технология интересная и важная и может быть альтернативой FileMaker Data API
Предлагаю здесь обсуждать особенности использования, и кто с чем сталкивался.
Андрей Волков сделал большой пост в топике про последнюю версию FM, выношу сюда этот текст:
что интересного в этой ставшей доступной ныне функциональности OData API?
она похожа на FileMaker Data API, но есть значительные преимущества
Во-первых, это почти полноценный REST API по стандарту OData. Почти - потому что некоторые функции недоступны.
Rest API позволяет выполнять очень сложную выборку данных. Это, по сути, аналог SQL запроса. Получать данные намного проще.
Во-вторых, сам запрос выполняется проще. Для FileMaker Data API вы должны сначала подключиться к базе данных и получить токен, затем вы выполняете запросы, следя за сроком действия токена, если время превышено, то вы обновляете. И в конце сессии вы отключаетесь от базы данных через logout
OData API позволяет вам получить или отправить данные без предварительной авторизации. В каждый http реквест вы просто подсовываете пользовательский логин-пароль в заголовок Basic authorization. Удобно
В-третьих, вы можете в рамках одного HTTP запроса выполнить сразу несколько операций, которые будут выполняться транзактно: ошибка на любом шаге ведет к отмене всей цепочки операций.
В-четвертых, вы можете управлять метаданными в вашей базе данных, то есть вы можете удаленно, через http запросы создавать и удалять таблицы, создавать и удалять поля в этих таблицах (кроме калькуляций). Это по сути почти то же самое, что вы можете делать с помощью DataBox Plugin. И актуально, потому что, к сожалению, в режиме веб-запросов функции плагина недоступны. То есть если вы веб-запросом запустите скрипт, использующий функции плагина, то они не будут работать
![Грустный :(](./images/smilies/icon_e_sad.gif)
В-пятых, в OData API вместо макетов вы обращаетесь непосредственно к таблицам (Table Occurences), вам не нужны макеты и размещенные на них поля, чтобы получать данные из таблиц. Это удобно.
В-шестых, вы имеете возможность получить схему базы данных, метаданные. Формат ответа я еще не видел, но надеюсь на максимум. Об этом поговорим отдельно позже, здесь можно выловить много ништяков.
В-седьмых, вы можете выбирать удобный для формат отправки и получения данных в запросе. Это может быть JSON или XML.
В минусы можно записать то, что в трафик включается содержимое контейнеров, и если вы работаете с контейнерами, то ваш лимит может быстро исчерпаться.
Итак, где потенциально это может пригодиться?
1) Если кто-то уже использует FileMaker Data API, то возможно будет более удобно перейти на OData
2) упрощается интеграция веб-форм. Заполняя веб-форму в веб-вьюере, вы можете затем записать данные в базу не с помощью вызова фм скрипта на клиенте (который опять же начнет открывать новое окно, создавать запись и т.д., всячески тормозить процесс), а удаленно, веб-запросом.
3) можно наловчиться загружать данные в веб-вьюер именно запросом к серверу. А раз так - можно делать автоматическое обновление html в веб-вьюере.
4) очень привлекательна возможность получать живые данные о схеме базы данных. Если это сработает, то я поделюсь идеями.
5) Можно запускать асинхронный процесс с помощью веб-вьюера. То есть вы запускаете с помощью веб-вьюера через Http-request удаленно некий скрипт на сервере, потом веб-вьюер дожидается ответа от сервера и когда получает этот ответ, запускает некий файлмейкер скрипт.
Вы же все это время спокойно работаете с файлмейкером.
6) временные таблицы упрощают возможность создания динамических отчетов. Хотя я бы предпочел для таких целей именно DataBox Plugin
Коллеги, делитесь вашими соображениями. Чем это может быть полезно и как это удобнее всего организовать.
https://blog.beezwax.net/odata-for-file ... d-nuances/