OK, de volta a esta lição, vamos escolher até onde paramos e continuamos a
falar de roteamento e expressamos três objetivos principais.
O primeiro é mostrar o que se chama Splatt ou Star Route Matcher.
E então eu quero que você escreva rotas contendo parâmetros de rota.
Então, vamos falar sobre como fazemos quais são os parâmetros da rota.
E, finalmente, eu quero uma rápida discussão sobre o Raut.
Vamos começar.
Estou usando exatamente o mesmo primeiro aplicativo expresso que usamos antes.
É apenas um único ato.
Sim.
E um diretório de mandris de nó com o Express APTA instalado, sim, o nosso Olá. Há por e são rotas de
cães de barra e nós vamos continuar a adicionar isso nesta lição.
O primeiro desses objetivos que eu vou bater é a introdução do splatt ou Star Route Matcher antes de nós ou
você qualquer código novo.
Eu apenas vou começar o servidor, então o nó eu fiz sim.
então eu vou abrir a guia onde eu realmente estou visitando o aplicativo e eu quero mostrar-lhe esta mensagem primeiro.
Certifique-se de que ele seja iniciado,
Então, isso acontece quando você tenta acessar um de seus aplicativos quando o servidor não está sendo executado, mas
o servidor está sendo executado agora.
Então, se eu atualizar agora, eu recebo o meu oi, ou se eu forçar o Doug, eu entendo agora.
Mas quando eu quero mostrar é se eu vou para uma rota que não existe como cães Slash e eu entrei e
eu mostrei isso mais cedo, eu não consegui pegar cachorros cortos e isso acontecerá para qualquer rota
que eu vá, a menos que seja um dos três que definimos.
Slash dog and slash by.
Então, se quisermos ter algum tipo de mensagem, que respondamos a todas as
outras rotas, exceto pelo cão e a rota, podemos usar a estrela.
Então, isso parece que isso vai fazer um apt get e nós apenas começamos a estrela e nós seguimos com
tudo o mais exatamente o mesmo.
E em vez de aqui vamos fazer um ponto vermelho e você é uma estrela assim e salva.
Então este código será ativado, esta linha será executada.
Sempre que nosso aplicativo receber qualquer solicitação para qualquer um que você conheça além desses três que já definimos, então eu
vou mostrar que agora você precisa reiniciar o servidor.
Ok reiniciou-o.
Atualize a página, nada deve mudar.
Mas agora, se eu forar uma rota de ish chipper aleatório e eu acertei, eu entendo que você é uma estrela.
Mas minhas outras rotas são inalteradas.
Se eu for a barra, isso ainda funciona se eu for para o cachorro que ainda funciona, mas se eu forjar o jibberish, eu acho que
você é uma estrela.
da Web que você mostre um usuário sempre que tentar e acessar uma rota que não está definida ou que você
não espera que você possa mostrar algum tipo de mensagem ou algum modelo HDMI que diz Página não encontrada.
Isto é especialmente útil se você quiser ter algum tipo de mensagem de erro ou área da página
Voltemos agora ao nosso editor e vou tentar algo onde eu vou copiar isso ou cortá-lo e
movê-lo acima das outras rotas e apenas salvá-lo, então não mude nada.
Além da ordem em que agora minha rota de estrela o catchall vem primeiro e então eu vou
reiniciar meu servidor Control-C e depois a seta para cima.
Agora vou voltar e atualizar a página e isso não deve mudar, porque isso ainda está falando.
Então, ainda está atingindo essa captura de todas as rotas e não bate em nenhuma das outras rotas.
se eu tentar e pegar um cachorro, eu pego a sua estrela e, se eu tentar comprar a barra, eu também recebo sua estrela.
Mas se eu tentar e ir para a página de raiz, ainda assim, você é uma estrela
Então, isso obtém esse terceiro objetivo, que queria ter uma discussão sobre a ordem das rotas
e essa discussão se resume a esta ordem de assuntos da rota.
Então, neste caso, se eu colocar esta captura toda a estrela que combina tudo se eu colocar isso
primeiro, então nada mais será igualado.
O conceito-chave é que a primeira rota que corresponde a um determinado pedido é a única rota que será
executada.
Então, para um pedido, nunca teremos esse código executado.
E, em seguida, este código se uma dessas devoluções de chamada estiver sendo executada se estiver sendo ativada, então terminamos.
Então, esse pedido foi processado e nunca se move para essas outras rotas.
Mas digamos e vamos mudar isso de volta para onde foi, vamos dizer que este é o meu código
e alguém faz um pedido para cortar o cachorro.
A primeira coisa que vai acontecer é expressa vai verificar se ele corresponde a essa rota.
Foi uma solicitação para reduzir.
A resposta é não.
Então, ele verifica isso.
Foi um pedido de compra para comprar.
Não.
Então, ele verifica isso.
Foi uma solicitação para cortar o cachorro.
A resposta é sim.
Então, ele executa esse código e depois é feito.
Não se move e verifica isso no final.
que coloquei isso primeiro, é problemático porque substitui qualquer uma das outras rotas que definimos.
Então, é claro
E eu sempre responderei com uma estrela que, apesar de ser um ótimo site motivacional, não é
o comportamento que procuramos em um aplicativo web real.
E o último objetivo que eu quero falar sobre qual é definitivamente o mais importante
é algo chamado parâmetros de rota para ajudar a introduzir parâmetros de rota.
Eu vou usar o Reddit dot com e mostrar-lhe algumas das suas rotas para aqueles que não estão
familiarizados com a leitura. Eu recomendo que você evite a todo custo.
Não escute o que estou prestes a dizer.
Você perderá toda a produtividade em sua vida do jeito que funciona é que as pessoas podem publicar posts diferentes se
é um link ou uma imagem ou um vídeo ou apenas algum texto.
Dois subcedentes diferentes e existem milhares e milhares de subconjuntos diferentes cada um com
uma categoria.
Então, agora, estou olhando para o futebol subtendido, eu também poderia ir ao jogo ou à música ou engraçado
ou a notícias ou filmes.
E cada um desses tem conteúdo relacionado a esse tópico.
Então, neste caso, eu estou no futebol sub leia e notei a rota Reddit dot com slash é slash soccer.
Então, quando perguntei ao servidor para Reddit dot com slash slash Socker, ele analisa a rota e percebe que estamos
procurando posts de futebol para o banco de dados obtém todas as postagens de futebol e as envia
para mim na resposta.
Mas, como mencionei anteriormente, há milhares e milhares de assuntos diferentes e posso garantir
que o Reddit não está configurado como este, onde há uma rota para cada leitura.
Não é correto o nosso corte de futebol e vou encurtar isso e depois outro para música e outro
para filmes e assim por diante.
Dez mil vezes mais.
Não é assim que o vermelho funciona.
Este código não está seco.
Lembre-se de stands secos, não se repita.
Na verdade, é muito molhado, escreva tudo duas vezes.
Embora seja mais como escrever tudo 10000 vezes.
Então, em vez de definir uma rota separada para cada subconjunto, poderíamos definir um padrão.
E isso é o que o vermelho faz.
Eles têm um padrão que algo como Slash ou cortar um sub-nome.
Mas se deixarmos isso assim como cortar a nossa fatia de pão no nome, isso só irá coincidir quando
eu for cortar a nossa barra, Sublete o nome e eles combinam exatamente o mesmo.
Antes de mostrar-lhe como podemos contornar isso quando você voltar para lê-lo e clicar em uma das postagens.
Então, este post aqui vou clicar nisso e olhar para a rota.
Então está pronto para vir.
Slash our slash soccor slash comentários cortar esta cadeia louca é um IED cortar o título da postagem ou
parte do título.
vai para esta rota, você recebe todos os comentários que correspondem a esta postagem na postagem que possui esse título.
E quando você
E, claro, existem milhões e milhões de postagens diferentes no Reddit e não têm cada
uma sua própria rota definida.
Portanto, não há uma rota que se pareça com isso dentro do código do servidor, algo assim seria
insano para cada publicação.
Especialmente porque as postagens são todas criadas por usuários e ninguém que esteja escrevendo
o código pode antecipar todas essas postagens diferentes.
Então, em vez disso, gostaríamos de algum tipo de padrão em que nós tivéssemos a nossa barra secundária, leia o nome.
Neste caso, o corte de comentários de futebol corta e o título da barra de identidade e apenas como aquele acima, onde ele tinha o
nome de Sublette.
Isso só corresponderá se, literalmente, digitemos um caractere de palavra por palavra para o caractere, é um subconjunto que ele nomeia
o título de barra diagonal de barras de comentários.
Então, para transformá-lo em um padrão, usamos o que são chamados parâmetros de rota ou variáveis ​​de rotas e em
outras estruturas as pessoas também as chamam de variáveis ​​de caminho.
Eles são muito simples de implementar.
em que escutarmos uma solicitação de solicitação para reduzir nossa barra, mais uma vez, depois, um único Sabet o nome.
Se eu quiser definir um padrão
Tudo o que você precisa fazer é colocar um cólon ali mesmo e que diz expressar para não combinar o personagem para o
subconjunto de caracteres do nome, mas para torná-lo um padrão em que o relistening para Slash é cortado em
qualquer palavra depois.
Então, deixe-me comentar isso por agora e vamos terminar com o nosso pedido e resposta
e abri-lo assim e tudo o que ele faz é ler é enviado.
Bem-vindo a um assunto e nós vamos salvar isso e reiniciar nosso servidor.
Agora, se eu quiser ver essa mensagem, preciso ir para uma rota que corresponda a esse padrão.
Então, vamos voltar e atualizar e se nós vamos deslizar por nós ainda conseguimos o mesmo.
Se vamos a essa página, obtemos a mesma coisa.
Mas agora, se formos a cortar nossos cachorros slash, agora recebo uma mensagem que diz: Bem-vindo a um sub Reddit.
Por isso, cortar nossos cachorros slash segue este padrão e, portanto, cortar nosso futebol de barra ou qualquer outro subconjunto que
eu poderia surgir.
Mas é importante notar que algo assim não funcionaria.
Slash our slash soccor slash hello que já não funciona porque este é um padrão diferente.
Então, não é como um wild card onde diz corte ou corte algo mais depois.
O que realmente significa é combinar qualquer coisa que vem com o Slash ou cortar qualquer coisa que o
acompanhe.
Então, não é cortada a barra no nome, barra algo mais, mas corte slash soccor slash slash cachorros.
E eu estou dizendo que a barra é muito e está ficando realmente irritante.
Então vamos seguir aqui e eu vou mostrar-lhe como podemos converter este.
Parece exatamente o mesmo.
Acabamos de colocar um ponto de cólon em frente a qualquer coisa que desejemos ser uma variável e qualquer
coisa que desejemos que o usuário ou o aplicativo possam mudar.
Então, os comentários sempre devem ser apenas comentários em cada publicação reddit.
Sempre é o nome do sub Reddit, como comentários de barras de futebol cortar o ID cortar o título de uma
postagem para que os comentários estejam sempre lá e isso agora será compatível se eu for uma derrota.
Vamos concluir que esta resposta de resposta de função deve surgir com uma rota para corresponder a esta.
Eu recebi uma pequena mensagem aqui, o que é muito bom do Cloud 9, dizendo-me que não esperava que
esta impressão fosse vista.
Isso porque eu não estava chamando de método.
e eu vou apenas receber a página de comentários assim e salvar e reiniciar o servidor agora para coincidir com essa rota.
Então, agora vamos fazer um envio de ponto vermelho
Eu preciso ir para cortar a nossa barra de sublocá-lo, o nome dos comentários cortos abre uma ID qualquer barra de um título que
pode ser qualquer coisa também.
E vamos fazer isso agora.
Nós iremos para cortar os comentários de barras cortas de futebol cortar qualquer ID.
Vamos fazer um dois três, mas não precisa ser números.
Pode ser uma palavra.
Não importa em absoluto.
E, em seguida, corte um título como o meu primeiro jogo de futebol e, se chegarmos a Enter, agora somos bem-vindos na página
de comentários.
Mas é claro que posso mudar isso e torná-lo algumas cordas aleatórias.
E então outro título que é uma string aleatória ou apenas números.
E eu ainda combino com esse padrão.
Portanto, não está a verificar o fato de que algo é letras ou palavras ou tem sublinhado ou que é
pelo menos 10 caracteres que não se importa.
Existem maneiras de fazer isso.
Mas tudo isso se preocupa é um padrão de trocas de texto seguido e dividido por barras, o último
e mais importante é como acessamos esses dados ao invés de nosso manipulador de rotas.
Então, se eu quisesse enviar uma mensagem aqui, sabia que é bem-vindo ao Sublette de futebol quando o usuário
vai para cortar o futebol slash.
Mas eu quero que isso mude também.
Bem-vindo aos cachorros.
Então eu li isso quando eles vão para nossos cachorros slash.
Preciso de uma maneira de acessar isso.
E você sabe qual foi o valor de subarrê-lo e expressou nos dá uma maneira agradável e fácil
de fazer isso em vez deste objeto de solicitação.
Até agora, só trabalhamos com os residentes de resposta e, mas o objeto de solicitação
contém todas as informações sobre o pedido recebido.
Vamos fazer um con simples. solicitações de registro e provavelmente não poderemos ver tudo
o bastante porque há tanto que imprimirá apenas um pequeno subconjunto dele.
Mas vamos tentar reiniciar o servidor e acessar esta rota.
Então, nosso slash enviar o nome para o futebol.
E aqui você pode ver isso realmente imprime o todo.
E, portanto, há muitas informações provenientes desse pedido.
Isso está sendo impresso aqui.
E o que eu procuro é algo chamado parâmetros de solicitação, que deve ser aonde vamos aqui.
É um objeto que contém todos os parâmetros da rota e seus valores correspondentes.
Então, neste caso, o nome do sub redit é igual a Socker porque eu fui cortar o nosso slash soccer.
Então, o que podemos fazer é que vamos cancelar os pedidos de log para parar o harams em
vez de tudo e salvar e depois atualizar ou reiniciar o servidor.
E agora, se eu for cortar nossa barra, olá, dirá que o nome subtil é oi.
Eles podem fazer o mesmo para cachorros.
E nós vamos lá.
Deixe-me mostrar-lhe o mesmo quando temos vários parâmetros do caminho, como fazemos aqui.
Então eu vou colocar isso aqui.
Salvar reinicie o servidor novamente e, em seguida, irá ativar essa rota, indo aos nossos cortes de cortesia, os cortes de
comentários cortar um título de barra de identificação.
Meu núcleo é fofo e entre e entra.
Bem-vindo à página do Commons.
E se eu olhar no terminal, eu vejo que temos três diferentes parâmetros de rotas
três armas diferentes.
Subconforme o nome como ID de cachorros é 1 2 3 4 e o título é meu Corgi é fofo.
Enrole isso quando respondemos com Bem-vindo a um subconjunto, vamos realmente fazer isso.
Bem-vindo ao cachorro espalhado.
Seja bem-vindo ao que quer que seja espalhado.
E para torná-lo um pouco mais divertido, asseguremos que tudo seja maiúsculo.
Então, o que faremos é fazer uma variável muito longe e chamaremos de sub-igual que o pedido, o nome do sub redit tem
que coincidir exatamente com o que chamamos aqui.
Lembre-se que está dentro deste pedido.
Harams objeto em vez de apenas responder com bem-vindo a um subconjunto que fará.
Bem-vindo ao espaço.
Além disso, eu leio-o mais eu lê-lo para que seja bem-vindo aos cachorros.
Leia e não será maiúscula.
podemos fazê-lo aqui mesmo em Sublette e eu vou me livrar desse ponto-e-ponto e salvar e reiniciar o servidor.
Então, para fazer essa maiúscula podemos usar para maiúsculas maiúsculas e minúsculas, podemos fazer isso aqui ou
Voltemos e giremos essa rota novamente.
Então, este não irá ativá-lo.
Isto é para o roteador que possui múltiplos parâmetros.
Nós só queremos nossos cachorros de lama e eu recebo.
Bem-vindo ao cachorrinho.
Pronto.
eu faço cachorros cortados ou são cães cortados todos crescidos ou gatos e agora tenho uma página web dinâmica.
Agora, se
Tudo bem, então vamos embrulhar isso rapidamente e voltar para quando usamos a estrela em vez de uma
definição de rota.
Ele irá combinar com qualquer coisa que venha em conjunto e junto com a ordem em que definimos os assuntos
da rota.
Então, se colocarmos a estrela Routemaster no topo, nenhuma outra rota será executada abaixo.
Mas se colocarmos no fundo, onde é que normalmente vai, ele se comportará como uma captura de
todos os tipos de declaração.
Se nenhuma outra rota estiver combinada, de outra forma corresponda à estrela.
Por fim, conversamos sobre parâmetros de rota que podemos usar para definir um padrão em uma rota que não
precisa ser correspondente por palavra ou por personagem para personagem.
Apenas tem que ser combinado no mesmo padrão.
Então, algo assim, onde eu posso ter Slash, é cortar qualquer subconjunto que o nome dele.
Tudo bem, então é isso.
Então, no próximo vídeo, vamos fazer outro exercício e desta vez você estará escrevendo seu próprio aplicativo Express
a partir do zero e você usará cordas na parte de alguns dos wraps