Вы обновляете данные одновременно, возвращая все три значения в одном запросе.
Это был бы способ сделать это с любым веб-сервером, не говоря уже о том, чтобы работать на чрезвычайно ограниченном процессоре, таком как ESP8266.
Вы можете вернуть все три значения одновременно с помощью кода, который выглядит примерно так:
void handleAll() {
String results_json = "{ \"temperature\": " + String(temp) + ",", +
"\"high\": " + String(hoechst) + "," +
"\"low\": " + String(tiefst) + " }";
server.send(200, "application/json", results_json);
}
Это составляет объект JSON со всеми тремя значениями в нем. JSON - это «объектная нотация JavaScript», и Javascript очень легко собрать и разобрать.
Вам также необходимо обновить код веб-сервера ESP8266, чтобы добавить
server.on("/readAll", handleAll);
С помощью этого изменения вы можете исключить остальные три обработчика / read.
И вам нужно обновить ваш Javascript. Вам просто нужно сделать один вызов в Javascript, преобразовать возвращаемый текст в объект Javascript и прочитать каждое из трех значений из него, чтобы установить элементы в DOM. Это то, что jQuery может сделать так тривиально для вас.
И это 'text/plain'
, а не 'text/plane'
.
Вы также можете проверить jQuery - это значительно упростит ваш код Javascript.
Используйте =encoding utf-8
в качестве первой директивы POD в своем файле и используйте довольно недавнее perldoc
(например, от 5.10-maint). Тогда это должно работать.
Найденный этим билетом RT.... http://rt.cpan.org/Public/Bug/Display.html? id=39000
Эта "ошибка", кажется, начата с Perl 5.10 и возможно этого pod2man - utf8, должен использоваться.