Как реализовать jsonp в iot

Anvil

New member
Хоть и не без косяков, но общение с контроллером средствами JSON довольно удобно.
Но у данного метода есть ограничение на кросс-доменность.
Нельзя просто отправить AJAX на контроллер и получить ответ. Одно из рашений это JSON.
Кто подскажет как его можно реализовать.

Или если это плохой вариант, какие есть лучшие решения.
Задача: есть десяток устройств с ESP8266 и есть сервер. Надо реализовать управление устройствами из единого веб интерфейса.
 

Anvil

New member
Вопрос решился сам собой. Дописал в ответы Access-Control-Allow-Origin: *
Вдруг кто то еще испытывает данную проблему.

Но вопрос открыт по данному методу для моей задачи.
 

Anvil

New member
Звучит интересно. Если есть под рукой, дайте ссылок где почитать про применения и преимущества.
 

pvvx

Активный участник сообщества
Или если это плохой вариант, какие есть лучшие решения.
Задача: есть десяток устройств с ESP8266 и есть сервер. Надо реализовать управление устройствами из единого веб интерфейса.
Это делается на простейшем ModBus TCP. Пишется и отлаживается за день на си с нуля, а с Lua - всю её жизнь :)
 

Anvil

New member
Я на си и пишу. lua в контроллерах не признаю. Только вот примеров и доков маловато. Хотя я не много и занимаюсь ими, недавно пришли из поднебесной.
Захотел поднять сокет. Но не где не нашел как это сделать, даже тут на форуме нет. Одни луа или использование готовых прошивок.


Огромное спасибо за https://github.com/tuanpmt/esp_mqtt
Отказался от JSON в пользу ее. Простая и функциональная. Много софта ее поддерживает. Особенно понравилась библиотека для python.
 
Последнее редактирование:

pvvx

Активный участник сообщества
Я на си и пишу. lua в контроллерах не признаю. Только вот примеров и доков маловато. Хотя я не много и занимаюсь ими, недавно пришли из поднебесной.
Захотел поднять сокет. Но не где не нашел как это сделать, даже тут на форуме нет. Одни луа или использование готовых прошивок.


Огромное спасибо за https://github.com/tuanpmt/esp_mqtt
Отказался от JSON в пользу ее. Простая и функциональная. Много софта ее поддерживает. Особенно понравилась библиотека для python.
Для нормальной функционирования MQTT на ESP8266 перепишите обращения к espconn на прямые обращения к LwIP. Espconn имеет массу ошибок, и её постоянно исправляют в каждом SDK, но изначально неправильно выбранный алгоритм её связи с LwIP не решается даже текущей толпой патчей и кучей дублирующих данных LwIP в памяти, уже превысив размер занимаемой памяти на соединение самого LwIP (SDK 0.9.6) :)
По этой причине вам придется ещё изучить и LwIP :)
Ещё реализация https://github.com/tuanpmt/esp_mqtt использует статические буфера, что выедает постоянно и так малую память в ESP8266 от 3 килобайта. Перепишите на динамические буфера, открывающиеся только на момент обработки - приема/отсылки сообщения.
По этим двум причинам я не использую эту MQTT и не рекомендую, без их исправления.
 
Последнее редактирование:

Anvil

New member
Некоторые баги уже заметил, не всегда шлет Publish. Переписать espconn это конечно хорошо, но пока сложно и не понятно. :)
 
Сверху Снизу