ExeMES Server - реализуется сервисом ExeMES Middleware, который предоставляет API интерфейс для выполнения основных производственных операций (потребление, списание, производство и т.д.) и доступа к данным производственной модели MES, как метаданным модели, так и транзакционным данным о производственных операциях.
Сторонние клиенты могут использовать API ExeMES для реализации интерфейсов операторов, визуализации информации о ходе производства на дашбордах и в интерфейсах конечных пользователей.
Note |
---|
По умолчанию все API ExeMES возвращают параметры с типом время в локальном времени экземпляра ExeMES Server без указания тайм-зоны (в формате YYYY-MM-DDThh:mm:ss), если необходимо:
|
Вызов web API ExeMES можно реализовывать различными способами в зависимости от способов и методов реализации на стороне клиентских приложений.
Пример вызова web API функции Attr, возвращающей список всех атрибутов производственной модели:
Code Block | ||||
---|---|---|---|---|
| ||||
var myHeaders = new Headers(); var accessToken = "token"; // здесь необходимо задать Access Token, полученный от KeyCloak myHeaders.append("Authorization", `Bearer ${accessToken}`); var requestOptions = { method: 'GET', headers: myHeaders }; fetch("https://mesmiddleware.[домен]/api/Attr", requestOptions) .then(response => response.json()) .then(result => console.log(result)) .catch(error => console.log('error', error)); |
Code Block | ||||
---|---|---|---|---|
| ||||
var client = new HttpClient(); var request = new HttpRequestMessage(HttpMethod.Get, "https://mesmiddleware.[домен]/api/Attr"); var accessToken = "token"; // здесь необходимо задать Access Token, полученный от KeyCloak request.Headers.Add("Authorization", $"Bearer {accessToken}"); var response = await client.SendAsync(request); Console.WriteLine(await response.Content.ReadAsStringAsync()); |
ExeMES использует бесплатные инструменты Swagger в качестве встроенного инструмента документирования web API ExeMES.
Info |
---|
Swagger — это набор инструментов, который позволяет автоматически описывать API на основе его кода. На основе кода Swagger автоматически генерирует документацию в формате JSON-файла. Ее можно встроить на страницу сайта или в приложение, чтобы пользователи могли интерактивно знакомиться с документацией. Часть инструментов Swagger доступна бесплатно и имеет открытый исходный код, часть — платная и предназначена для коммерческого использования. |
Документация по web API ExeMES доступна в Swagger по адресу https://mesmiddleware.[домен]/swagger/index.html. В интерфейсе swagger представлен список всех доступных web API функций ExeMES с описанием.
Policy, которая используется для настройки уровня доступа пользователей. Пользователи, для которых в конфигурации keycloak указана данная Policy могут вызывать указанную API функцию. В описании функции также указана
Expand | ||
---|---|---|
| ||
Для получения информации о параметрах функции необходимо выбрать функцию в списке после чего откроется выпадающая область, в которой представлены все параметры функции. Также в выпадающей области можно вызвать функцию с заданными параметрами. Для этого сначала необходимо пройти процесс авторизации. Для авторизации в Swagger необходимо нажать на кнопку «Authorize», размещенную в правом верхнем углу основной страницы, после чего в открывшемся окне нажать на кнопку «Authorize». Далее вы будете перенаправлены на страницу входа и после успешного прохождения авторизации API функции будут доступны для вызова из Swagger. Swagger предоставляет информацию о назначении каждой функции и каждого параметра функции. Для вызова функции необходимо нажать на кнопку «Try it out» в выпадающей области, после чего задать необходимые параметры функции и нажать на кнопку «Execute». В случае успешного выполнения функции, возвращаемые функцией данные станут доступны в поле «Response body». При неуспешном выполнении функции в Server response будет предоставлена информация об ошибке.
|