OK, witamy z powrotem w tej lekcji mamy zamiar odebrać aż którym skończyliśmy i nadal mówić o routingu i wyrażają trzy główne cele.
Pierwszy z nich to, aby pokazać, co nazywa się matcher Splatt lub gwiazdy trasy.
A potem chcę Ci napisać trasy zawierające parametry trasy.
Więc będziemy rozmawiać o tym, jak to zrobić, co trasy są parametry.
A potem wreszcie chcę mieć szybki dyskusję o Raut kolejności.
Zacznijmy.
Używam dokładnie taką samą pierwszą wyraźną app, który używaliśmy wcześniej.
To tylko jeden akt.
Tak.
I katalog trzpienie node Express zainstalowany APTA tak ma nasz Hi Istnieją i są przez ukośnik trasy psów i jesteśmy po prostu będzie nadal dodać do tego w tej lekcji.
Pierwszy z tych celów, które będę dotkniętych jest wprowadzenie dopasowywania Splatt lub gwiazdy trasy przed nami i wami każdy nowy kod.
Idę do uruchomienia serwera tak węzła robiłem tak.
Upewnij się, że zaczyna się ok to mam zamiar otworzyć zakładkę, gdzie ja właściwie wizyty aplikację i chcę pokazać wam tę wiadomość jako pierwszy.
Tak to się dzieje podczas próby uzyskania dostępu do jednego ze swoich aplikacji, gdy serwer nie działa w ogóle, ale serwer jest uruchomiony teraz.
Więc jeśli odświeżyć teraz dostanę hi tam lub jeśli pójdę ciąć Doug mam mnie teraz.
Ale gdy chcę pokazać to, jeśli pójdę do trasy, który nie istnieje jak psy Slash i nacisnąć enter i pokazał to wcześniej dostaję nie mogą uzyskać psy slash i że nastąpi niezależnie od trasy, że idę chyba że jest to jeden z trzech, które zostały zdefiniowane.
Slash and slash przez psa.
Więc jeśli chcemy mieć jakiś catchall jakieś wiadomości, że reagujemy na każdą inną drogą wyjątkiem od psa, a trasa możemy użyć gwiazdę.
Tak, że wygląda to tak zrobi apt get a my po prostu gwiazdą i przystępujemy wszystko dokładnie tak samo.
I zamiast tutaj, musimy po prostu zrobić czerwoną kropkę i jesteś gwiazdą tak po prostu i oszczędzać.
Więc ten kod zostanie uruchomiony ten wiersz tutaj będzie działać.
Ilekroć nasza aplikacja pobiera żadnej get żądanie każdej wiesz Oprócz tych trzech, które mamy już zdefiniowany, więc pokażę wam, że teraz trzeba ponownie uruchomić serwer.
Ok ponownym uruchomieniu go.
Odśwież stronę, nic nie powinno się zmienić.
Ale teraz, jeśli pójdę do jakiegoś losowego trasie rębak owski i naciśnij enter uzyskać jesteś gwiazdą.
Ale moje inne drogi są niezmienione.
Jeśli pójdę do slash, który nadal działa, jeśli pójdę do slash psa, który nadal działa, ale jeśli idę do jibberish uzyskać jesteś gwiazdą.
Jest to szczególnie przydatne, jeśli chce się mieć jakiś komunikat o błędzie lub obszar strony, aby pokazać się w każdej chwili obsługi starali i przejść trasę, która nie jest zdefiniowana lub taki, który nie zwariować można pokazać jakąś wiadomość lub jakiś szablon, który mówi HDMI Page Not Found.
Wróćmy teraz do naszej redakcji i mam zamiar spróbować czegoś dokąd idę skopiować ten czy wyciąć i przenieść go nad innymi drogami i po prostu zapisać go tak niczego nie zmieni.
Niezależnie od kolejności, gdzie teraz moja gwiazda poprowadzić catchall pochodzi, a potem mam zamiar ponownie uruchomić serwer Control-C, a następnie strzałkę w górę.
Teraz mam zamiar wrócić i odśwież stronę, a to nie powinno się zmienić, ponieważ jest to nadal jibberish.
Więc to, że wciąż uderzając złapać wszystkie trasy i nie trafiając którykolwiek z pozostałych trasach.
Ale gdy próbuję i przejdź do strony korzenia I wciąż jesteś gwiazdą, jeśli spróbuję i przejdź do slash psa dostanę swoją gwiazdę, a jeśli staram się iść do slash Kupuję też dostać swoją gwiazdę.
Więc to dostaje w tym trzeci cel, który jest chciałem mieć dyskusję o kolejności tras i że dyskusja sprowadza się do tego, aby w kwestii Route.
Więc w tym przypadku, jeśli kładę to na wykrycie wszystkich obecnie gwiazdę, która pasuje do wszystkiego, jeśli kładę, że pierwszy wtedy nic innego nie zostanie dopasowane kiedykolwiek.
Kluczowym pojęciem jest, że pierwsza trasa, która pasuje dany wniosek jest jedyną drogą, która będzie działać.
Więc na jedno żądanie nigdy nie będziemy mieć ten bieg kodu.
A potem ten kod, jeśli jeden z tych wywołań zwrotnych jest uruchomiony, czy to jest wyzwalany wtedy skończymy.
Tak, że prośba została następnie przetwarzane i nigdy nie przenosi się na innych trasach.
Ale powiedzmy, że i my będziemy poruszać tego z powrotem na dół, gdzie to było, powiedzmy, że jest to mój kod i ktoś wysyła żądanie ciąć psa.
Pierwszą rzeczą, która się wydarzy jest wyrażona zamierza sprawdzić, czy jest on zgodny z tej trasy.
Czy to żądanie GET ciąć.
Odpowiedź brzmi nie.
Więc sprawdza ten jeden.
Czy to żądanie GET kupić.
Nie.
Więc sprawdza ten jeden.
Czy to żądanie GET ciąć psa.
Odpowiedź brzmi: tak.
Tak działa ten kod, a potem to się robi.
To nie przejść i sprawdzić ten jeden na końcu.
Więc oczywiście mogę umieścić ten pierwszy jest to problematyczne, ponieważ zastępuje którykolwiek z pozostałych tras, które mamy zdefiniowane.
A ja po prostu zawsze reagować z gwiazdą, która mimo to sprawia, że ​​dla wielkiej motywacji strony internetowej nie jest to zachowanie, które szukamy w prawdziwej aplikacji internetowej.
I ostatni cel, który chcę mówić o co jest zdecydowanie najważniejsza jest coś, co nazywa parametry trasy, aby pomóc wprowadzić parametry trasy.
Zamierzam użyć Reddit dot com i pokazać niektóre z jego tras dla tych, którzy nie są zaznajomieni z odczytany Gorąco zalecamy unikać za wszelką cenę.
Nie słuchaj, co mam do powiedzenia.
Stracisz wszystko produktywność w swoim życiu tak, że działa to, że ludzie mogą zakładać różne posty, czy jest to łącze lub obraz lub wideo lub po prostu jakiś tekst.
Dwa różne subeditors i istnieją tysiące różnych podgrup każda jedna z kategorii.
Więc teraz szukam w piłkę nożną wyznaczany mogę też iść do gier jeden lub muzyki lub śmieszne lub wiadomości lub filmów.
I każdy z nich ma treści, które są związane z tym tematem.
Więc w tym przypadku jestem na sub nożnej ją przeczytać i zauważyłem Reddit Trasa dot com ukośnik ukośnik są nożnej.
Więc kiedy poprosiłem serwer dla Reddit dot com slash slash Socker analizuje trasę i realizuje szukamy stanowisk piłkarskich idzie do bazy danych pobiera wszystkie posty, piłki nożnej i wysyła je do mnie w odpowiedzi.
Ale jak już wspomniano wcześniej, istnieją tysiące różnych przedmiotów i mogę was zapewnić, że Reddit nie jest skonfigurowany w ten sposób, gdzie nie jest to trasa dla każdego przeczytać.
To nie jest apt uzyskać slash slash naszą piłkę nożną, a ja po prostu skrócić, że a potem jeszcze jeden dla muzyki, a drugi dla filmów i tak dalej.
Dziesięć tysięcy plus razy.
To nie jest jak czerwona to działa.
Ten kod nie jest sucha w ogóle.
Pamiętaj suche podpórek nie powtarzają się.
W rzeczywistości jest to bardzo mokry napisać wszystko dwa razy.
Mimo to nic więcej jak napisać wszystko 10000 razy.
Więc zamiast zdefiniować oddzielne trasy dla każdego podzbioru że moglibyśmy zdefiniować wzór.
I to właśnie czerwony robi.
Mają wzór, który coś takiego jak Slash lub ukośnika sub to nazwisko.
Ale jeśli po prostu zostawić to tak jak slash naszą kromkę chleba na imię będzie pasować tylko kiedy idę do slash slash Sublette naszą nazwę to i dopasować go dokładnie tak samo.
Zanim pokażę jak to obejść, że kiedy wrócę, aby ją przeczytać i kliknij jeden z wpisów.
Więc ten post tutaj Idę na nią kliknąć i patrzeć na trasie.
Więc to jest gotowa przyjść.
Slash nasze soccor ukośnik ukośnik komentarze slash ten szalony ciąg jest to IED slash tytuł postu lub części tytułu.
A gdy idziesz do tej trasie można uzyskać wszystkie komentarze, które odpowiadają na to stanowisko na stanowisko, które ma ten tytuł.
I oczywiście istnieją miliony i miliony różnych stanowisk na Reddit i nie każdy ma zdefiniowane swoje własne trasy.
Więc nie jest to droga, która wygląda tak wewnątrz kodu serwera coś takiego byłoby szaleństwo mieć dla każdego postu.
Zwłaszcza, że ​​słupki są tworzone przez użytkowników i nikt kto piszących kod w stanie przewidzieć wszystkich tych różnych stanowisk.
Zamiast więc chcielibyśmy jakiś wzór, gdzie mamy nasz ukośnik sub ją przeczytać nazwę.
W tym przypadku piłki nożnej komentarze slash slash i Id slash tytuł i podobnie jak ten powyżej, gdzie miał Sublette nazwę.
Będzie to pasuje tylko wtedy, gdy dosłownie wpisać słowo znaku słownego znaku są dla takiego podzbioru sama nazwa ukośnik ukośnik komentarze tytuł ID slash.
Tak więc, aby go na wzór wykorzystujemy tak zwane parametry trasy lub zmienne trasy i na innych forach ludzie nazywają je zmienne ścieżki, jak również.
Są bardzo proste do wykonania.
Jeśli chcę, aby zdefiniować wzór gdzie posłuchać na zamówienie Pobierz ciąć nasze ukośnik coś innego potem każdy pojedynczy Sabet nazwę.
Wszystko co musisz zrobić, to umieścić dwukropek właśnie tam i że mówi Express faktycznie nie pasuje do charakteru postaci podzbioru imieniu, lecz aby to wzór gdzie relistening dla Slash są slash dowolne słowo później.
Więc pozwól mi skomentować ten jeden na teraz i skończmy to się z naszą prośbę i reagowania i otwórz go ot tak i wszyscy to zrobi jest odczytywany jest nie wysyłać.
Zapraszamy do tematu, a my po prostu zapisać, że i uruchomić nasz serwer.
Teraz, jeśli chcę zobaczyć tę wiadomość, muszę iść do trasy, która pasuje do tego wzorca.
Więc wróćmy i odświeżyć i jeśli pójdziemy ślizgać się przez wciąż to samo.
Jeśli idziemy do tej strony mamy więc dostać to samo.
Ale teraz, gdy idziemy ciąć nasze szczenięta ukośnymi I teraz pojawia się komunikat, że mówi Witamy w Reddit sub.
Więc nasze szczenięta slash slash ten wzór i tak slash slash naszą piłkę nożną lub innego podzbioru, że mogę wymyślić.
Jednak ważne jest, aby pamiętać, coś to nie działa.
Slash nasze soccor slash slash komentarzy, które już nie działa, ponieważ jest to inny wzór.
Więc to nie jest tak dziką kartę, gdzie mówi ukośnik lub ukośnik coś innego później.
Co tak naprawdę oznacza to pasuje do niczego, co przychodzi z ukośnik lub ukośnik każdą pojedynczą rzecz następującą go.
Więc nie są ukośnik ukośnik ukośnik w imię czegoś innego, ale slash slash soccor ukośnymi szczeniąt ukośnikiem.
A ja mówię, że łamane są dużo i robi się naprawdę irytujące.
Więc przejdźmy tutaj i pokażę ci, jak możemy przekształcić ten jeden.
Wygląda dokładnie tak samo.
Po prostu umieścić dwukropek przed niczym, że chcemy być zmienną i wszystko, co chcemy, aby użytkownik lub aplikacja będzie w stanie zmienić.
Więc komentarze zawsze powinien być tylko komentarze na każdym reddit postu.
Zawsze jest nazwa Reddit sub jak piłka nożna komentarze slash slash identyfikator slash tytuł postu, tak komentuje jej zawsze tam i ta zostanie dopasowana, jeśli pójdę na trasie.
Skończmy z tym odpowiedzi na żądanie funkcja musi pochodzić z trasy, aby dopasować ten jeden.
Mam mały wiadomość tutaj co jest naprawdę ładnie z Cloud 9 mi powiedzieć, że nie spodziewałem się tego drukiem, aby zobaczyć.
To dlatego, że nie było wywołanie metody.
Więc teraz zróbmy czerwoną kropką send a ja po prostu Witamy na stronie komentarzy, które podobnie jak i wszyscy zapisać i zrestartować serwer teraz, aby dopasować tę trasę.
Muszę iść do slash naszą ukośnik podnajem go Nazwa ukośnik ukośnik to nic ID slash tytuł, który może być cokolwiek, jak również.
I zróbmy to teraz.
Pójdziemy do piłki nożnej slash slash slash slash komentarze żadnego identyfikatora.
Zrobimy jeden dwa trzy, ale nie muszą być liczbami.
Może to być słowo.
Nie ma znaczenia.
A potem ciąć tytuł jak mój pierwszy mecz piłki nożnej i jeśli trafiliśmy Wprowadź teraz uzyskać Witamy na stronie komentarzy.
Ale oczywiście mogę to zmienić i uczynić go jakiś przypadkowy ciąg.
A potem jeszcze jeden tytuł, który jest losowy ciąg czy tylko numery.
I nadal są zgodne ze wzorcem.
Więc to nie jest sprawdzanie tego, że coś jest liter lub słów lub ma podkreślenia lub że jest to co najmniej 10 znaków to nie obchodzi.
Istnieją sposoby, aby to uczynić.
Ale to wszystko dba o to wzór fragmentów tekstu, a następnie podzielona przez ukośniki ostatnią i najważniejszą rzeczą jest to, w jaki sposób uzyskać dostęp do tych danych, zamiast z naszej obsługi trasy.
Więc gdybym chciał wysłać wiadomość tutaj było wiadomo zapraszamy do piłki nożnej Sublette że gdy użytkownik przechodzi do slash slash w piłkę nożną.
Ale chcę go zmienić też.
Witamy szczeniąt.
Więc czytałem go, kiedy idą do naszych szczeniąt ukośnikiem.
Potrzebuję, aby uzyskać dostęp do zewnątrz.
I wiesz co było wartość podnajem mu i wyraził daje nam przyjemny i łatwy sposób na to, że zamiast tego żądania obiektu.
Do tej pory tylko pracował z mieszkańcami i odpowiedzi, ale przedmiot wniosek zawiera wszystkie informacje na temat żądania przychodzącego.
Zróbmy prosty con. żądań logowania i prawdopodobnie nie będzie faktycznie być w stanie zobaczyć wszystkiego, dużo, ponieważ jest tak wiele, że nie będzie drukować tylko niewielki podzbiór niego.
Ale niech tylko spróbować ponownie uruchomić serwer i uderzył tą drogą.
Więc nasz ukośnik przedłożyć go wymienić na piłkę nożną.
I tu widać to faktycznie ma wydrukować całą sprawę.
A więc nie ma wiele informacji pochodzących z tego wniosku.
To wszystko jest drukowany tutaj.
A co szukam jest coś, co nazywa parametry żądania, które powinny być tam, gdzie idziemy tutaj.
Jest to obiekt, który zawiera wszystkie parametry trasy i odpowiadających im wartości.
Więc w tym przypadku sub nazwy REDIT jest równa Socker bo poszedł do slash slash naszą piłkę nożną.
Więc co możemy zrobić, to zróbmy anulować że żądania dziennika zatrzymać harams zamiast całą rzecz i zapisać, a następnie odświeżyć lub zrestartować serwer.
A teraz, jeśli pójdę do ukośnik ukośnik naszą cześć będzie powiedzieć, że nazwa jest wyznaczany cześć.
Mogą zrobić to samo dla szczeniąt.
I tam idziemy.
Pokażę ci to samo, kiedy mamy wiele parametrów ścieżki tak jak my tutaj.
Więc ja po prostu umieścić, że właśnie tam.
Zapisz ponownie zrestartować serwer, a następnie spowodują tę drogę, przechodząc do naszych szczeniąt slash slash komentarze slash tytuł ID slash.
Mój rdzeń jest ładny i nacisnąć enter i mamy.
Witamy na stronie Commons.
I kiedy patrzę w terminalu Zobaczę, że mamy trzy różne parametry trasy trzy różne harams.
Podzbiór go nazwać jak szczenięta ID to 1 2 3 4 i tytuł jest mój Corgi jest słodkie.
Wrap to się, gdy odpowiadamy Zapraszamy do podzbioru to niech faktycznie zrobić.
Witamy szczeniaka roz.
Witamy na co roz.
I zrobić to trochę więcej zabawy, niech się upewnić, że wszystko jest wielkie.
Więc co zrobimy to zrobić zmienną daleko i będziemy nazywać go sub jest równa zwrócić się harams sub Nazwa REDIT musi pasować dokładnie to, co nazwaliśmy go tutaj.
Pamiętaj, że to tylko wewnątrz tego wniosku.
Harams obiektów, a nie tylko reagować z powitania do podzbioru to zrobi.
Witamy w przestrzeni.
Plus Czytałem go także czytałem to tak, że będzie mile widziane szczeniąt.
Przeczytaj ją, a to nie będzie wielka.
Więc, aby to wielkie litery możemy użyć do górnej przypadku możemy zrobić tutaj lub możemy zrobić to tutaj na Sublette go i będę pozbyć tego średnikiem i zapisać i zrestartować serwer.
Wróćmy i wywołać tę trasę ponownie.
Więc to nie spowoduje to.
Jest rutera, który ma wiele parametrów.
Chcemy po prostu nasze szczenięta slush i dostaję.
Witamy na szczeniaka.
Gotowy.
Teraz, jeśli ja się ciął szczenięta lub psy ukośnik wszyscy dorastali i koty, a teraz mam dynamiczną stronę internetową.
W porządku, więc niech to owinąć się bardzo szybko i wrócić do kiedy używamy gwiazdę zamiast definicji trasy.
Będzie pasować wszystko, co przychodzi w ogóle, a wraz z tym porządek, który definiujemy spraw trasy dojazdu.
Więc jeśli stawiamy gwiazdę routemaster się górna inne drogi będzie działał pod nią.
Ale jeśli umieścimy go na dole czyli tam, gdzie normalnie idzie będzie zachowywać się jak połowu wszelkiego rodzaju jako oświadczenie innego.
Jeśli żadna inna trasa zostanie dopasowana inaczej dopasować gwiazdę.
Wreszcie rozmawialiśmy o parametrach trasy, które możemy wykorzystać do określenia wzoru w trasie, która nie musi być dopasowana do słowa lub znaku do znaku.
Prostu musi być dopasowany do tego samego wzoru.
Więc coś takiego, gdzie mogę mieć Slash są slash dowolny podzbiór Jej nazwa pochodzi od niego.
Dobrze więc, że jest to.