Выполнение HTTPS-запросов с использованием команд ESP8266 AT
Я пытаюсь сделать HTTPS GET / POST запросы на следующий сервер, используя команды AT.
AT+CIPSTART="TCP","54.166.71.140 ",443
Я получаю ошибки, когда использую порт 443, но на порту 80 запросы выполняются успешно.
Как я могу обойти эту проблему ? каковы могут быть потенциальные решения ?
@omkar joglekar, 👍1
Обсуждение1 ответ
Лучший ответ:
HTTPS требует, чтобы вы создали SSL-соединение, а не TCP-соединение. Для этого вам нужно использовать
AT+CIPSTART="SSL","54.166.71.140 ",443
Вам также необходимо настроить сам SSL.
Однако поддержка SSL невелика и борется с некоторыми сайтами (нет поддержки SNI всеми учетными записями).
Поэтому вам лучше запрограммировать ESP8266 непосредственно с помощью вашего собственного скетча, чтобы он делал любые HTTPS-запросы и обрабатывал данные за вас.
Как мне настроить SSL, есть ли какая-нибудь ссылка?, @omkar joglekar
Из примеров, которые я видел, похоже, что это просто настройка размера буфера SSL. Есть команды настройки, но я не видел, чтобы они использовались., @Majenko
Это решило проблему :) размер буфера по умолчанию был 2048, @omkar joglekar
- esp32 Stack canary watchpoint срабатывает
- ESP8266 не отвечает через случайные промежутки времени
- NodeMCU 1.0 автоматически сбрасывается через некоторое время
- esp32 http client response только 200 не получил данные после этого
- Метод HTTP PUT на NodeMCU/ESP8266
- Adafruit esp32 Feather не удалось скомпилировать
- Http-запрос в прерывании esp8266 не работает
- Не удается подключить ESP8266 к базе данных сервера
прочтите ссылку, пожалуйста, @Juraj
вы имеете в виду этот документ ? https://docs.espressif.com/projects/esp-at/en/latest/AT_Command_Set/TCP-IP_AT_Commands.html, @omkar joglekar
это зависит от обстоятельств. это для AT 2.1. для AT 1.7 это https://www.espressif.com/sites/default/files/documentation/4a-esp8266_at_instruction_set_en.pdf, @Juraj