WEBSD (8 / 12 steg)

Steg 8: Ethernet - mitten



Ok du har en webbserver, den har länkar, text, bilder. Men det verkar fortfarande saknas något, vi är inte på 90-talet längre. Vad vi behöver är ett sätt att interagera med världen så:

------------------------------------------- Dynamic Variables ---------------------------------------------
Nu kom ihåg att koppla in TempPotLedButton styrelsen.

Dynamiska variabler är sätt mikrochip valde att genomföra denna interaktion. Du sätter något i stil med "~ temp ~" i din webbsida kod, sedan när MPFS läser detta är ändrade för att ringa till en subrutin i programmet. Den rutin som kallas är "HTTPPrint_temp" på filen "CustomHTTPApp.c". Det kan du returnera alla säkerställa en strikt att vara Visa i webpage med kommandot "TCPPutROMString()". Alla samtal till de tryckta subrutiner är i "HTTP_print.h"-filen som genereras automatiskt av obelastat msfs.

De variabler i denna demo är status för knappen, temperatur i styrelsen, placera av potentiometern. Värdena som fångas när webbsidor laddas, så en F5 måste pressas att uppdatera sidan med nya värden.

Jag lagt till en "ipconfig" sida för att visa konfigurationen för styrelsen TCPIP protokoll.

---------------------------------------------------- GET form --------------------------------------------------------
Fram till nu har vi en http-server som kan visa verkliga världen variabler såsom temp, status på en knapp... Nu är det dags att börja kontrollera saker från webben. Vi kommer att använda ett HTML-formulär för att göra detta. Det finns två metoder för behandling av uppgifter för HTML-formulär: GET eller POST. FÅ det är okomplicerade men har en gräns på storleken på data. INLÄGGET har ingen gräns, men är lite svårare. För att bara växla en led få kommer att metod vara tillräcklig.

Get är gjort av ett formulär på webbsidan, det Lägg till URL-adressen till webbsidan som vissa data:
"index.htm?led=on", är där Led är variabeln och på staten.

Mikrochip HTTP2 server kallar en rutin kallas: "HTTPExecuteGet" när en get form måste bearbetas. I denna rutin måste vi kontrollera om det är rätt webbsidan, leta efter variabeln i webbadressen, kontrollera sin tillstånd och göra något med det som växla LED.

Det krävs bara att bränna och öppna webbläsaren för att se detta arbetar.

------------------------------------------------- Authentication ------------------------------------------------
Sidan ipconfig har lite info om det lokala nätverket, kanske det är bättre att skydda denna information. y lyckligtvis mikrochip har gjort nästan alla jobb för oss (trevlig). Behöver bara lägga till modulen autentisering på HTTP-servern.

En rutin i customHTTPApp.c en rutin kontroller om webbsidan att vara öppen måste autentisering, och andra rutin kontroller lösenordet. Enkel eftersom det kan vara.

Bränna bara demo, och försök att öppna ipconfig sida, standard config:
användare: "arthur"
passera: "admin"

Se Steg
Relaterade Ämnen