• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Решено Кодировка, кнопки, Луа

BrightYC

New member
Всем привет.
Я новичок в NodeMCU, прошу не бить палками и не кидаться тапками(и не бить за реализацию кнопок через GET /, мне в этом помогал друг, бить его, а не меня).

Есть код: [Lua] wifi.sta.config({ssid = "SSID", pwd = "PASS"}) wifi.setmode(wifi.STATION) wifi - Pastebin.com
Есть header:


Проблема в том, что какая-то проблема с кодировкой. Вот так выглядит страничка:


Прошу помочь с кодировкой(что не так), и возможно подсказать более удачную идею для реализации кнопок.
 

NeoroN

Member
Нужно чтобы сам исходник был тоже сохранен и загружен в UTF-8, либо в исходнике меняй на ту кодировку в которой сохранял(windows-1251).
 

BrightYC

New member
В том то и "прикол", что сам файлик тоже в утф-8upload_2019-1-15_23-14-49.png
esplorer может "сломатЬ" кодировку?
И самое интересное на закуску - файл в УТФ-8, но если скачать .html страницу то кодировка магический образом Windows 1251
 

Юрий Ботов

Moderator
Команда форума
И посмотрите заголовок HTML страницы - там обычно указано во что изначальную кодировку браузер должен превратить...
 

BrightYC

New member
upload_2019-1-16_12-52-24.png
Увы, рекомендации не помогли.

На счёт заголовка - не помогает вообще, такие же кракозябры..
 

Сергей_Ф

Moderator
Команда форума
BrightYC, операционка, браузер какие? Пробовали на другом компе, в другом браузере. Откройте в браузере режим разработчика, посмотрите что реально приходит на запрос.
 

BrightYC

New member
Пробовал в хроме на 10 винде, так же пробовали и на хроме на убунте, и на firefox'е. Всё так же.
Сам файлик приходит в UTF-8, но символы корректно отображается только при выставлении кодировки windows 1251.
Хедеры UTF-8, но сами символы не в UTF-8. Странно очень
 

Сергей_Ф

Moderator
Команда форума
файлик приходит в UTF-8
но сами символы не в UTF-8.
вы уж определитесь. Если сами не можете разобраться, то хоть покажите что у вас приходит.
и исходники в виде файликов приложите. Именно те, что вы загружаете в esp.
 

Сергей_Ф

Moderator
Команда форума
@BrightYC. Извините, это не файл. Это то, как его показывает дропбокс. Загрузите файл сюда, именно как файл. Иначе кодировку не увидеть.
И покажите raw-страницу в браузере из режима разработчика.
 

BrightYC

New member
К сожалению, файл я сюда загрузить не могу. Пишет :
upload_2019-1-16_19-19-56.png
Извиняюсь, не до конца понимаю что значит "Режим разработчика".
 

Сергей_Ф

Moderator
Команда форума
Попробуйте заменить
Код:
          socket:send("Content-Type:text/html;charset=UTF-8\r\n\r\n" ..
          "<html>" ..
          "<head>" ..
на
Код:
          socket:send("Content-Type:text/html\r\n\r\n" ..
          "<html>" ..
          "<head>" ..
          "<meta charset='utf-8'>" ..
Хотя в заголовке лучше даже оставить charset=utf-8, но без кавычек!!!
 
Последнее редактирование:

BrightYC

New member
upload_2019-1-17_14-39-11.png
Увы, опять та же ситуация(код всё еще в UTF-8)
Пробовал и без кавычек, и с кавычками.
 

BrightYC

New member
Упс, я починил, если кому интересно, помогло выставление <meta charset = "windows-1251">

Тему можно закрывать..
 

CodeNameHawk

Moderator
Команда форума
Если файл редактировать в ESPlorer, с
Код:
"<meta charset='utf-8'>" ..
не работает. Браузер переключается на кодировку Кириллица(Windows), оно же "windows-1251".

А если все тоже самое сохранить в Programmer`s Notepad в кодировке UTF-8 No BOM и загрузить в есп, то название кнопки видно в браузере и кодировка Юникод.
 
Сверху Снизу