Извините, если об этом уже спрашивали, но я ничего не могу найти в Интернете. Я просто хочу разместить страницу в arduino ethernet Shield, и когда я захожу на нее из браузера с параметрами Get (например, http://xxx.xxx.xx.xx/led.html?red=255,green=0,blue=255), чтобы изменить, чтобы изменить цвет светодиода. Я не могу найти, как отправить данные из браузера в arduino.
Arduino считывает значения после ? в URL-адресе с ethernet-экраном
Ответы (1)
Ответ предполагает использование Библиотеки Ethernet (Ethernet.h) - который предоставляет интерфейс для Client
и Server
, степень концептуализации низкоуровневого ввода-вывода и буферизации ввода, а также контекст.
В следующем фрагменте кода (пример кода на http://arduino.cc/en/Tutorial/WebServer< /а> )
...
char c = client.read();
Serial.write(c);
...
строка char c = client.read()
берет байт из потока запросов и присваивает его типу char, затем он сериализует этот charbyte в строку, где выполняет над ним условную логику.
Условная логика этого примера заботится только о чтении символа возврата \n
в пустой строке, но байты, которые считываются (на каждой итерации) байт за байтом, фактически составляют запрос RAW.
Как минимум, запрос RAW HTTP GET выглядит так:
GET /?first=John&Last=Doe HTTP/1.1
Host: localhost
Таким образом, чтобы прочитать строку запроса, необходимо буферизировать байты, считываемые из потока.
Затем вы, скорее всего, сериализуете весь буфер в строку и будете выполнять над ними строковые операции, а также свою условную логику....