Witam wszystkich!
Po swietnych poradnikach Mirka nadszedl dzis czas aby dodac troche do tego swietnego materialu. Mozliwe ze ktos juz to opisywal - jednak chcialem sie z Wami podzielic jak wykonac HTTP POST czyli wyslac dane do naszej strony. Ja osobiscie uzywam tego do wysylania danych ktore zbieram w domu do chmurki w Microsoft Azure.
Jest to praca w toku - wiec jesli ktos bedzie tak mily i podzieli sie swoimi uwagami / poprawkami bedzie naprawde super!
Wiec zaczynamy! Specjalnie dla forumowiczow stworzylem strone do testowania wraz z baza danych. Strona jest dostepna pod adresem
http://atnelforum.azurewebsites.net/ a pomoc dotyczaca obecnych tam metod jest pod adresem
http://atnelforum.azurewebsites.net/helpWiekszosc kodu zrodlowego , ktory przedstawiam bazuje na tym , ze posiadasz Mirkowskie biblioteki do UART'a i chociaz widziales/(as) poradniki o zapytaniach GET. Swoj poradnik zaczynam od wprowadzenia nowej struktury , ktora bedzie mi pomagac w rekonfiguracji klienta WWW
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Widzac powyzsze juz wiemy , ze bedziemy mieli tym razem takze mozliwosc przekazywania numeru portu do jakiego chcemy wyslac informacje. Przyczyna jest prosta - nie zawsze wysylam pod domyslny port 80!
Funkcja do rekonfiguracji z potencjalem na zmiany z wykorzystaniem pinow LINK i READY
ja na chwile obecna uzywam okropniastych delay_ow :/
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
No a teraz rekonfiguracja Wifi
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
No wiec mamy nasza funkcje przygotowana! Sprawdzmy wiec czy dziala poprawnie ? wykonamy odpytanie do strony zawierajaca pomoc znajdujaca sie pod adresem
http://atnelforum.azurewebsites.net/helpjęzyk c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
A oto i rezultat takiego odpytania
Jesli spojrzycie jeszcze raz pod linka z pomoca dla naszych dostepnych metod zobaczycie co musimy wyslac aby dane znalazly sie w bazie danych :
Wiec przyszedl czas zeby wyslac informacje , ktore chce zeby znalazly sie tam uzywajac naszego AVR'ka - OTO MAGICZNY KOD
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
No i sukces! Oto informacja o tym u mnie na konsoli
Pojawia sie tutaj dosc wazna kwestia. Jesli przyjszysz sie informacjom ktore wysylalem do servera :
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Pojawily sie interesujace naglowki HTTP ( wszystkie mozesz znalezc pod adresem
http://en.wikipedia.org/wiki/List_of_HT ... ield_names). Podalem informacje serverowi ze bede wysylal dane w formacie JSON. Nastepnie musze tez podac informacje o dlugosci jaka wyslalem (akurat w moim przypadku bylo to 65 - jesli zmienisz dane musisz obliczyc te wartosc)
to tak naprawde tyle jesli chodzi o HTTP post. Ma to ogromny potencjal do stworzenia malej biblioteki gdzie naglowki bylby to np array , gdzie dlugosc obliczana bylaby automatycznie przed wysylaniem
wszelkie krytyczne uwagi mile widziane!
zobacz tych ktorym HTTP post sie udal http://atnelforum.azurewebsites.net/api/avr