Посмотрите видео - пример из него близок к вашему вопросу:
https://youtu.be/xFvN0BryJFk
В интернете есть много примеров, как с помощью curl отправить HTTP-запрос.
Вид для печати
Посмотрите видео - пример из него близок к вашему вопросу:
https://youtu.be/xFvN0BryJFk
В интернете есть много примеров, как с помощью curl отправить HTTP-запрос.
спасибо за направление :)
с запросом справился, даже данные получил, но быстродействие работы curl через SysExec трудно назвать разумным.
при выполнении основной задачи простейший запрос выполняется около 30 секунд. это долго.
скачал и освоился с HTTP Client, работает быстро но не работает по https или я не понял что надо сделать.
IIoT пока не могу разобраться как сделать POST запрос с разбором ответа.
вдруг есть такие же видео по упомянутым библиотекам и Вы о них знаете?
Эта библиотека не поддерживает HTTPS.Цитата:
скачал и освоился с HTTP Client, работает быстро но не работает по https или я не понял что надо сделать.
Эта библиотека не будет работать на наших контроллерах, так как она требует приобретение и активацию лицензии.Цитата:
IIoT пока не могу разобраться как сделать POST запрос с разбором ответа.
Наши контроллеры не поддерживают активацию лицензий.
Команда, вызываемая через CmpSysExec, выполняется не в потоке реального времени, чтобы не блокировать приложение CODESYS, но 30 секунд звучит не очень реалистично.Цитата:
при выполнении основной задачи простейший запрос выполняется около 30 секунд. это долго.
Например, здесь видно, что выполнение POST запроса занимает около 3 секунд:
https://youtu.be/T6XfuDQIOk4?t=426
Возможно, наблюдаемые вами задержки связаны с особенностями вашего проекта или сервера.
Сделайте простой проект, в котором будет только вызов блока из CmpSysExec, и посмотрите, сколько времени зайтем выполнение запроса в этом случае.
останавливаю проект, захожу в конфигруатор - система - терминал пишу запрос https://polkomoda.ru/local/api/crm/?...get&user=18359 - ответ через 1-2 секунды
запускаю проект - пишу то же самое в терминале - 23-30 секунд исполнение в терминале
как сделать лучше?
30 секунд совсем долго.
iiot брал от сюда пишет что для 210 02 тестировано
https://github.com/Allexd1992/iiot_t...ample_codesys3
https://github.com/Allexd1992/iiot_tools
уже из совершенно странных источников пытаешься что то получить лишь бы заработало - задача то весьма обычная и простая. получить данные с веб страницы а не получается...
можете что то сказать про библиотеку iiot_tools и стоит ли пытаться в ней разобраться или искать дальше как
Что это за проект? Это пустой проект, с одним вызовом блока из CmpSysExec?Цитата:
запускаю проект
Если да - обеспечьте доступ по AeroAdmin, пожалуйста - посмотрим, что у вас происходит.
На мой взгляд - это библиотека, созданная на базе открытых библиотек других людей с присвоенным авторством, и сделанная закрытой.Цитата:
можете что то сказать про библиотеку iiot_tools
Ее работоспособность я прокомментировать не могу.
Здравствуйте.
А подскажите по этой библиотеке.
Я сохраняю три разных переменных в строке Json. Получается строка:
Потом делаю обратное преобразование из строки, но получаю переменные другого типа. См. рисунок:Код:{"stJson":{"var1":25,"var2":1025,"var3":-3.14}}
Вложение 71432
Что я делаю не так? И как получить нужные типы данных (такие, какие были при формировании строки)?
Добрый день.
Ответ содержится в примерах использования библиотеки (интегрированных в библиотеку).
Не забудьте объявить переменные (bVar2 и т.д.).Код:bVar2 := TO_BYTE(stJson.var1.Integer);
wVar2 := TO_WORD(stJson.var2.Integer);
rVar2 := TO_REAL(stJson.var3.AsString);
В общем библиотека Json более-менее работоспособная. С открытым исходным кодом. Лицензия MIT ("она находится в Интернете, поэтому люди могут делать с ней все, что захотят").
Заворачивает в JSON все виды данных.
А вот обратно не разворачивает данные bool, array и array_of_struct. Ну или я просто чего-то не понимаю.
Важно: имена структуры для fbStruct_to_json (сериализация) и структуры для fbJson_to_struct (десериализация) должны быть одинаковыми.
Здравствуйте.
Вопрос на засыпку:
Чем обмен через OPCua лучше обмена через TCP сокеты? Ведь можно похожим образом отправлять/получать переменные (заворачивая их в Json).
Возможно, тем, что меньше действий в программе надо делать и меньше разбираться в мелочах и деталях?
А как насчет шифрования?