Welkom terug.
Dus dit is een van de belangrijkste lessen in de gehele cursus.
Maar het gaat ook heel anders dan alles wat we tot nu toe gedaan zijn.
En de reden dat het anders is dat ik ga laten zien u een bos van de code die je nooit eerder hebt gezien en u bent niet verwacht dat helemaal begrijpen.
De reden waarom ik dit doe is dat ik wil u een conceptueel overzicht van hoe al deze stukjes in elkaar passen te geven.
De database van de server GET-verzoek bericht vraagt ​​de browser.
Al deze verschillende dingen verzoeken en antwoorden.
Ik wil dat alles met een heel eenvoudige werkende applicatie te tonen.
Dus dat is wat ik ga doen hier.
Als ik dit onderwees in persoon zou dit het punt waar ik u vragen om uw laptop neer te zetten naar de computer te sluiten.
Het is duidelijk dat geen goed idee hier.
Maar het gevoel achter dat is dat ik niet wil dat je te maken van aantekeningen op dit.
We gaan om te gaan over elke lijn en schrijf het van de grond af en maak vijf zes zeven van deze verschillende apps met behulp van deze concepten.
Dus dit is gewoon over hoe de dingen in elkaar passen niet de feitelijke details over hoe ze werken.
Met dat gezegd laten we ga je gang en krijg hier begonnen.
Dus deze toepassing zich inspireren door de honden.
Het is heel erg simpel.
Geen styling helemaal.
Slechts een paar verschillende pagina's.
En het eerste wat we nodig hebben om te praten over is wat deze hele bestand is.
Dus dit is onze server bestand.
In mijn geval is het zogenaamde app ontwijken.
Ja, dit is geschreven in Javascript.
En toen ik dit bestand uit te voeren zal het eigenlijk een server te starten voor mij.
Dus toen ik vroeger toen we een verzoek genoemd heb om het te lezen dot com slash zoeken er code op Reddit server die luistert voor een verzoek om het te lezen.
Nu com slash zoeken en dan stuurt u weer de juiste gegevens in een reactie.
Toen als ik zeg dat er code op Reddit server dit is het soort code waar we het over.
Dus ook al te lezen in Python wordt gedaan en dit is javascript Dit is onze code op de server die luistert voor verschillende verzoeken en vervolgens reageren met verschillende stukjes.
Er zijn drie grote brokken en dit op de top is net onze applicatie opgezet.
Dus inclusief het recht bibliotheken zoals je kunt zien zijn er een paar afhankelijkheden.
Opnieuw zullen we dan later gaan ze allemaal.
Dan hebben we een database spullen.
Dus dit is het opzetten van onze database, zodat onze database kent elke hond heeft een naam en een ras en ze zijn allebei strings.
En dat is alles gezegd over dat nu.
En dan zijn er deze dingen genoemd wraps dat is waar we het grootste deel van onze tijd in deze les zullen doorbrengen voordat we dat doen maar ik wil wijzen op het belangrijkste deel van de server die aan het daadwerkelijk beginnen hier deze zeer einde lijn niet uit de syntax, maar wat er wel toe doet.
Er is nummer hier drieduizend.
Wat dit zal doen is wanneer we deze toepassing uit te voeren toen ik dit bestand in mijn terminal lopen zal het daadwerkelijk beginnen met de server en onze applicatie zal op poort 3000.
Dus laat me je laten zien wat ik bedoel.
Ik ga naar deze server starten door het uitvoeren van het bestand opnieuw maakt niet echt uit wat ik daar doe.
En je kunt zien dat ik krijg een bericht portie hond demo op poort 3000.
Dus wat ik heb mijn tekstverwerker Ik ben het schrijven van de code in hier voor mijn server.
Toen in mijn terminal Ik ben eigenlijk het uitvoeren van de server.
Dus nu deze code wordt al van deze code uitvoert wordt uitgevoerd en deze lijn met name begonnen met een server op poort drieduizend.
Dus als ik naar de haven drieduizend nu en de manier waarop ik krijg er lokale host Colan 3000 zie ik iets dat home page zegt.
Laten we praten over hoe ik het krijgen van die homepage HMO als we zien pagina bron.
U kunt alles wat ik kreeg als antwoord een H-1 dat de home page zegt dat was te zien en dat is het.
Dus als ik terug naar mijn server hier zijn er een paar dingen die ik wil wijzen.
De eerste is dat ik in mijn terminal waar de server is gestart is er een kleine boodschap die werd afgedrukt.
En wat dit ons vertelt is dat iemand een get verzoek dat is wat deze zegt hier de voor u Arole slash gemaakt.
Dus localhost 3000 slash.
Dus er is niets daarna.
We noemen dit de root-pad of gewoon route die is eigenlijk wat we willen dat onze homepage te zijn.
Dus nogmaals, ik ging naar localhost 3000 en druk op enter.
En dat heeft me wat code, maar als ik naar localhost 3000 slash honden die me terug in als ik de pagina bron over dit geeft een aantal verschillende dingen kan zien als we wat meer inhoud dat is anders dan de inhoud die we kregen de eerste keer te krijgen en dat komt omdat dit een andere rij of een andere route.
Dus in dit geval was ik niet gewoon vragen om Slash.
Ik vroeg om Slash honden.
En als je kijkt in de terminal uitgang kun je zien dat er een verschil tussen een GET-verzoek naar slash of een get verzoek aan honden slash.
Dit is me gewoon laten zien, zodat ik je wat er gebeurt kan laten zien, maar dit is niet de logica of iets dergelijks.
Het is gewoon een venster in de verzoeken die worden gemaakt.
OK dus dat is het verzoek kant van de dingen.
Als ik druk op enter ik een aanvraag.
Hetzelfde hier.
Ik ben gewoon waardoor ze op twee verschillende plaatsen.
En natuurlijk heb ik kan maken die krijgen verzoeken met postbode ook.
Dus laten we maken en krijg verzoek aan localhost 3000, net als dat.
Neem even de tijd en denk na over wat je van ons verwachten om te zien wanneer ik raakte te sturen.
Daar gaan we Ik gewoon precies hetzelfde H-1 en als ik dat doe lokale host 3000 slash honden die een GET-verzoek en ik raakte stuur krijg ik dezelfde HD-mail die we kregen toen ik een GET-aanvraag in de browser gemaakt door het raken voeren.
Laten we nu praten over de logica dat maakt dit allemaal gebeuren op de server kant.
Dus ik ga terug naar subliem te gaan en zich richten op deze drie onderdelen hier en in het bijzonder deze twee.
Ik weet dat ik een gebroken record op dit onderwerp, maar de syntax is niet het belangrijkste onderdeel.
We zullen zo veel tijd doorbrengen op het daadwerkelijk schrijven van deze routes dat dat niet significant.
Wat belangrijk is, is dat in deze eerste kleine brok deze code luistert naar een get verzoek daartoe krijgen slash slash.
En als dat gebeurt, we zijn het renderen van een pagina naar huis geroepen.
Dus nogmaals wanneer een get verzoek wordt gedaan naar localhost 3000 slash niets anders slash dan gaan we iets mee naar huis geroepen maken.
En hier heb ik de file naar huis gebeld.
Maakt niet uit wat de Ejay yess.
En de binnenkant van het daar is een H1 dat homepage zegt.
Dus laten we iets anders toe te voegen daar een paragraaf laag, net als dat en op te slaan.
En nu wanneer zij een verzoek krijgen slechts een GET-verzoek naar slash krijg ik de inhoud van dat bestand naar huis gestuurd terug naar mij en om voor die veranderingen om te werken Ik heb eigenlijk mijn server opnieuw op te starten.
Dus ik zal nu beginnen en kijk ik zal dit aan de kant te zetten voorbij en ik kom terug naar Chrome gaan halen mijn server er weer.
Ik ga een GET-verzoek naar localhost 3000 te maken.
Zoals je kunt zien vertelt het me een GET-verzoek werd gedaan om te snijden.
En we hebben deze inhoud terug.
Dus nogmaals onze code hier luistert voor krijgen we verzoeken slash en beslissen welk bestand terug te sturen.
Nu hier is een andere, meer ingewikkelde versie van dat waar we luisteren naar een GET-verzoek naar honden slash.
En dan is er nog een andere code die hier gebeurt.
En ik lees net geplaatst.
Alles wat hier gebeurt, is te krijgen alle honden uit de database, dus ik heb een aantal al in onze database.
En dan is het volgende deel is renderen het bestand honden en we zullen gewoon laat het op dat voor nu.
Dus krijgen we alle honden in de database en waardoor de honden bestand dat is hier.
En deze ziet er een beetje anders.
Het is niet alleen hem.
We hebben een aantal rare dingen hier dat we niet eerder hebben gezien.
Maar aan het eind van de dag wat er gebeurt is wanneer ik naar de honden onze app luistert voor een GET-verzoek naar honden slash slash.
Wanneer het wordt men het haalt alle van de honden in de database en elk heeft een naam en of het ras en dan maakt het een beetje liggen voor een ieder.
Dus elk van deze is een bondgenoot met een naam en een ras.
Dus nogmaals hebben we twee routes slash als een GET-verzoek en slash honden als een GET-verzoek en krijgen we twee verschillende bestanden en een beetje logisch wanneer we naar honden versus toen we gewoon naar slash slash.
Er is geen logica gebeurt er niets gebeurt met de database.
Het is gewoon geeft ons een statische pagina.
Maar dit is niet statisch.
Dit hangt af van wat er gaat komen uit de database.
Ga terug naar de server hier om onze code en ik zal een beetje te praten over deze lijn hier.
Dus we het renderen van een pagina een sjabloon genaamd Dogs dat is wat er hier geschreven honden.
Ja, maar we zijn het passeren van gegevens om deze template, omdat dit niet een bondgenoot hier dat Resti dash straathond zegt te hebben en het niet nog één daarna hebben in de template die zegt waarom het gouden dash zoals je kunt zien dat dat is wat we 're krijgen in de browser.
Maar ons dossier leest geen van die hebben.
En dat is wat het dynamisch maakt.
Dit bestand kan verschillend zijn elke keer dat het draait, afhankelijk van wat er in de database.
Dus wat we eigenlijk doen is een sjabloon of een patroon voor wat we willen dat er gebeurt, die voor iedere hond hond materiaal voor elk we willen een bondgenoot waar we heen gaan om de naam vet te maken of stevige scheut het ras net zo te definiëren platte tekst.
Dus dat is hoe we eindigen met dit voor iedere hond in de database die wij zoeken we gaan lus door en maak een enkele bondgenoot met de naam vetgedrukt dash die niet broeden in het vet.
Dus laat het daarbij.
Laten we samenvatten nu.
Dus hebben we onze code die de server maakt hier.
Dit alles is de enige code die verantwoordelijk is voor het maken van onze server.
We hebben een aantal zetten code maakt eigenlijk niet uit.
Een database code niet veel ook niet uit.
En dan zijn deze twee routes en die toe doen veel.
Dus dit is hoe we andere code en verschillende bestanden te krijgen, afhankelijk van de door u zijn alles wat we vragen we een verzoek om slash als het krijgen aanvraag.
We krijgen een file naar huis maken we een GET-verzoek naar honden slash en een beetje meer gebeurt achter de schermen.
Het vindt alle honden in de database en maakt dat honden dienen.
Maar het bestand honden dynamisch omdat het een heleboel honden en voor elk een.
Het maakt een bondgenoot.
Dus als we hadden 10.000 honden in de database zouden we eindigen met 10.000 bondgenoten.
En het laatste punt dat ik wil maken is dat we hebben een tekstverwerker hier dat ik een terminal waar ik de server draait en dan ga ik in de browser en het bezoeken van die webpagina door het maken van een verzoek.
Dat zijn de drie instrumenten die we nodig hebben.
Dus die drie dingen de teksteditor waar we de code schrijven op terminal of ergens waar we de server kan beginnen en hebben het luisteren.
En dan eindelijk een browser waar we kunnen eigenlijk gaan en verzoeken.
Dus we hoeven niet naar een browser We konden postbode gebruiken, maar niemand gebruikt postbode om daadwerkelijk te communiceren met onze webpagina in de volgende paar video's wanneer we beginnen met het schrijven van onze eigen web-applicaties te gebruiken.
We zullen deze drie dezelfde gereedschappen hebben.
Dus we gaan een teksteditor een browser en een terminal of ergens om de server te draaien.