WEBSD (8 / 12 stap)

Stap 8: Ethernet - midden


Ok u een webserver hebt, heeft het links, tekst, beelden. Maar nog steeds lijkt iets missen, we zijn niet meer in de jaren 90. Wat we nodig hebben is een manier van interactie met de wereld zo:

------------------------------------------- Dynamic Variables ---------------------------------------------
Nu Vergeet niet om de stekker van het TempPotLedButton bestuur.

Dynamische variabelen is de microchip manier ervoor gekozen om het implementeren van deze interactie. Je zoiets als "~ temp ~" in de code van uw webpagina, dan wanneer de MPFS dit leest het is veranderd om te bellen naar een subroutine in het programma. De routine genoemd is "HTTPPrint_temp" op het "CustomHTTPApp.c" bestand. U kunt er elke stric worden weergeven in de webpagina met het commando "TCPPutROMString()" terugkeren. Alle oproepen naar de print subroutines zijn in het "HTTP_print.h" bestand dat automatisch wordt gegenereerd door msfs.

De variabelen uitgevoerd in deze demo zijn de status van de knop, de temperatuur van de Raad van bestuur, positie van de potentiometer. De waarden worden vastgelegd wanneer de webpagina wordt geladen, dus een F5 worden ingedrukt moet om het vernieuwen van de pagina met de nieuwe waarden.

Ik heb een "ipconfig" pagina om aan te tonen van de configuratie van de Raad van bestuur TCPIP protocol toegevoegd.

---------------------------------------------------- GET form --------------------------------------------------------
Tot op heden hebben we een http server die kan worden weergegeven echte wereld variabelen zoals temp, status van een knop... Nu is het tijd om te beginnen met controle dingen uit het web. Om dit te doen zullen we een HTML-formulier gebruiken. Er zijn twee methoden voor de verwerking van gegevens voor HTML-formulieren: GET of POST. KRIJG het simples maar heeft een limiet op de grootte van de gegevens. POST heeft geen limiet, maar is een beetje moeilijker. Als u wilt gewoon schakelen een led get zal methode volstaan.

Get wordt gedaan door een formulier op de webpagina, het aantal gegevens toevoegen aan de URL van de webpagina zoals:
"index.htm?led=on", waar Led de variabele, en aan de staat.

Microchip HTTP2 server bellen een routine genaamd: "HTTPExecuteGet" wanneer een get-formulier moet worden verwerkt. In deze routine die we controleren moeten als het de juiste webpagina, zoek naar de variabele in de url, de status controleren en er iets mee doen zoals het wisselen van de LED.

Het is gewoon nodig om te verbranden en het openen van de browser om te zien deze werken.

------------------------------------------------- Authentication ------------------------------------------------
De pagina ipconfig heeft één of andere info over het lokale netwerk, misschien zijn beter te beschermen van deze info. y gelukkig Microchip heeft bijna al het werk gedaan voor ons (aardig). Moet enkel de authentication module toevoegen aan de HTTP-server.

Een routine in customHTTPApp.c een routine controleert als de webpagina wordt geopend verificatie moet, en andere routine het wachtwoord controleert. Eenvoudig als het zou kunnen zijn.

Gewoon branden de demo, en probeert te openen van ipconfig pagina, Standaardconfig is:
gebruiker: "arthur"
passeren: "admin"

Gerelateerde Artikelen