Запросы в базу данных можно отправлять, используя открытый REST API.
Доступ осуществляется напрямую посредством SQL запросов на чтение по адресу:
- http://localhost:7766/selectsql,
- или PL/SQL блоков на изменения данных http://localhost:7766/executesql.
Где http://localhost:7766/ — адрес сервера, на котором установлен обработчик с доступом к базе AVA (7766 фиксированный порт).
В Params указывается параметр ?sign=
Значение sign рассчитывается следующим образом:
sign = sha256(TO_UTF8(copy(body,1,1500)+api_salt),
то есть:
первые 1500 символов Body +api_salt в кодировке UTF8 хешированые алгоритмом sha-256
api_salt хранится для selectsql в параметре 50329, для executesql в параметре 50330.
В Body есть всего два раздела в JSON данных:
- «sql» — непосредственно SQL запрос с заданными в тексте параметрами,
- «Params» — тут перечисляете параметры и их значения.
Примеры:
- http://localhost:7766/selectsql?sign=534afa4ce9c9dfa8a4be2e6bbbf8df814894499d13199f1cb98c161f560d8629
«sql»: [«select count(*) cnt from v_e_gdsclss where iCountryid=:Param»],»Params»: «Param»:»1″
возвращает кол-во стран с кодом страны = 1 - http://localhost:7766/executesql?sign=f95c12ba64d4e02d9f73e896bf00dd579b12ad45f800587fb9612f7d663a56c7
«sql»: [«update v_e_gdsclss set iCountryid=:Param1 where iCountryId=:Param2″],»Params»: «Param1″:»1″,»Param2″:»38»
Всем странам, у которых код страны = 38, устанавливается новый код страны = 1
Для отладки запросов скачайте программу AvaLrpRestAPITester.
