Интеграция в другие системы — различия между версиями
Материал из WebHMI Wiki
Строка 1: | Строка 1: | ||
− | WebHMI позволяет взаимодействовать с другими системами посредством выполнения HTTP-запросов. Для этого в WebHMI есть библиотека | + | WebHMI позволяет взаимодействовать с другими системами посредством выполнения HTTP-запросов. Для этого в WebHMI есть библиотека [https://github.com/Lua-cURL/Lua-cURLv3 Lua-cURLv3]. С ее помощью можно легко и просто отправлять данные в сторонние системы а также запрашивать необходимые данные из этих систем. |
Данная функция доступна начиная с версии 2.6. | Данная функция доступна начиная с версии 2.6. |
Версия 10:32, 4 апреля 2017
WebHMI позволяет взаимодействовать с другими системами посредством выполнения HTTP-запросов. Для этого в WebHMI есть библиотека Lua-cURLv3. С ее помощью можно легко и просто отправлять данные в сторонние системы а также запрашивать необходимые данные из этих систем.
Данная функция доступна начиная с версии 2.6.
Пример программы, выполняющей HTTPS-запрос для отправки данных виде файла на URL https://demo.com/upload:
function main (userId)
INFO("Doing CURL");
c = cURL.easy_init()
c:setopt_url("https://demo.com/upload")
c:setopt{ cainfo = '/etc/ssl/cacert.pem' }
postdata = {
name = {
file="dummy.html",
data="<html><bold>bold</bold></html>",
type="text/html"
}
}
c:post(postdata)
c:perform()
c:close()
INFO("CURL done");
end
Обратите внимание, что для корректной работы SSL-сертификатов необходимо иметь точное локально время. При значительном отклонении локальных часов, https-запросы могут не работать. Рекомендуем использовать синхронизацию времени по NTP-серверу.