gkAPI (далее, apiCards2) предназначен для доступа к некоторым данным системы Game-Keeper, а также для внесения изменений в эти данные. Технология реализована со на базе Microsoft Web Server IIS и инструментах платформы .Net Core.
Схема взаимодействия
Внешняя система посылает запрос согласно протоколу обмена на WEB-сервер IIS apiCards2. WEB-сервер обрабатывает запрос и через gkExtServer переправляет его в gkPosServer, который в свою очередь обращается в базу данных, осуществляя чтение или изменение данных. Полученная информация передается по этому же пути обратно внешней системе.
Состав дистрибутива
Папка с WEB-сервером apiCards2 находится в основном дистрибутиве версии GK в папке ..\GK\gkAPI\api.ext\cards2\.
Папка с gkExtServer находится в основном дистрибутиве версии GK в папке ..\GK\gkAPI\gkExtServer\.
Для удобства дальнейшей настройки и навигации необходимо создать папку WEB в корне папки GK и скопировать в неё cards2 и gkExtServer.
Установка и настройка gkExtServer
В папке с модулями gkExtServer, настраиваем конфигурационный файл gkExtServer.ini:
[DbConnect] – связь с gkPosServer
Port = 50300 – порт gkPosServer
ServerName = 127.0.0.1 – ip-адрес, где запущен gkPosServer
[Settings]
ServiceName=Cards – имя службы gkExtServer (будет отображаться в службах Windows)
HttpPort=50301 – порт gkExtServer
POSID=997
LogLevel=5
;Mode=1
Далее необходимо проинсталлировать службу gkExtServer, запустив через командную строку с ключом /install. Для удобства инсталляции службы в папке с gkExtServer.exe имеется install.bat, который необходимо запустить от имени Администратора. Предварительно в тексте файла необходимо отредактировать путь к gkExtServer.exe.
Запустить службу gkExtServer.
Настройка подключения apiCards2
Настройка заключается в конфигурировании файла gkconfig.json.
Содержимое файла:
{
"host": "127.0.0.1", - ip-адрес, где запущен gkExtServer
"port": "50301", - порт gkExtServer
}
Установка платформы .Net Core
Установка и настройка Microsoft Web Server IIS
Установка и настройка Microsoft Web Server IIS
В главном окне Диспетчера IIS выбираем элемент дерева «сайты», правой клавишей мыши – Добавить веб-сайт.
Вводим имя сайта, в нашем случае это apiCards2, указываем физический путь к папке cards2, задаем порт для веб-сервиса и нажимаем кнопку «ОК». При вводе имени сайта автоматически будет создан пул приложений для этого сайта с одноименным названием, необходимо в Диспетчере служб IIS перейти в меню дерева «Пулы приложений» и проверить, что пул создался с версией среды CLR.NET v4.0.
Заключение
Описание протокола можно найти в Приложение 3. Web API. Описание протокола, или в приложении к gkApi в файле «webApi2. Описание протокола.html». Через интерфейс сторонние системы, приложения, сайты могут получить доступ ук некоторым данным Game-Keeper, а также изменять их в соответствии с запросами.
Для возможности использования доступа к базе данных через интерфейс необходимо приобрести лицензию на модуль «WEB API».