Понравилась сама идея ардуины, стал ковыряться с ней, на данном этапе хочу сделать авторизацию при подключении к ардуине, но поскольку довольно таки далек от программирования, и изучать начал вот только только))) хочу попросить вашей помощи, может кто нибудь поможет. Смысл такой что вбить логин пароль в память ардуинки и при подключении к ней если ты правильно указал эти самые лог/пароль, то она показывает свое состояние или допускает до чего то, ну там уже особо не важно.
ну подключаюсь к ардуине через витую пару, и авторизация через веб интерфейс нужна, HTTP. само подключение к ардуине происходит, захожу по ip адресу. На данный момент дошел что ардуина мне выводит вот такой вот экранчик: вот собственно его код, но как сделать чтобы ардуина сравнивала данные вбитые пользователем в поля с истинным логином и паролем? и после этого открывала доступ к чему либо // Формируем HTML client.println("HTTP/1.1 200 OK"); client.println("Content-Type: text/html"); client.println(); client.println("<head> "); client.println("<meta http-equiv='Content-Type' content='text/html; charset=utf-8' /> "); client.println("<title> Arduino</title>"); client.println("</head> "); client.println("<body align=center>"); client.println("<h3>Пройдите авторизацию</h3>"); client.println("<br>"); client.println("Логин: <input type=text name=a value='' maxlength=20>"); client.println("<br>"); client.println("<br>"); client.println("Пароль: <input type=password name=b value='' maxlength=20>"); client.println("<br>"); client.println("<br>"); client.println("<input type=submit name=s value=Войти>"); client.println("<br>"); client.println("<br>"); еще так понял что наверное нужно использовать <form> и get или post, вообщем в голове все перемешивается, но пытаюсь разобраться
Естественно нужно! А со стороны ардуины потом разбирать http ответ. Вот, например, тут расписано, что и как передается.
Вовремя, конечно, но мало ли))) Вам нужно смотреть в запросе хеш авторизации Authorization: Basic <encoded-key>. Если его нет, значит отправляем клиенту такой заголовок: HTTP/1.0 401Unauthorized WWW-Authenticate:Basic realm="Arduino control panel" Этот ответ заставит браузер отобразить форму авторизации. Вводите логин пароль, эти данные шифруются в base64 и добавляются в тело запроса. Чтобы понять, какой именно хеш будет, найдите base 64 онлайн конвертер и введите данные в виде loginassword