Bem-vindo novamente nesta lição, vamos pegar onde paramos com o código de autenticação, não apenas
por código.
Você nunca codifica sozinho.
Você me tem aqui.
Então, codifique a parte 3.
Agora chegamos à carne de autenticação.
Vamos começar adicionando estas rotas de registro de rotas de inscrição e o formulário de registro e certificando-se
de que, no final deste vídeo, possamos poder nos inscrever para o nosso aplicativo.
Não iremos sair.
Não poderemos fazer login, mas poderemos nos inscrever.
ESTÁ BEM.
Então vamos começar.
A primeira coisa que precisamos discutir são as rotas que precisamos adicionar.
E antes de fazer isso, vou adicionar um pequeno divisor aqui porque
temos muito conteúdo no topo que apenas diz rotas que vou fazer com um pouco de sinais iguais.
Apenas para deixar claro que todas as rotas estão abaixo desta linha.
ESTÁ BEM.
Então, temos nossa barra e temos a rota secreta.
Agora, basta aqui vamos adicionar no nosso Auth. rotas para rever as rotas que precisamos.
Na verdade, irei para a versão de trabalho desta deslumbrante página inicial e, quando você
clicar no aviso de registro, o URL é uma barra de registro e vemos um formulário.
Então, temos um registro de barra de rota de busca que nos mostrará o formulário para realmente se
inscrever e, em seguida, se inscrevemos esse formulário, você verá que está enviando uma solicitação de publicação para reduzir o registro de barra de registro.
Não precisamos chamar isso de registro slash.
Você verá coisas como inscrição ou registro.
Pode ser o que você quiser, mas o registro é bom para nós.
Então, vamos voltar para o nosso apt.
Sim.
E nós precisamos adicionar essas duas rotas e eu vou começar com um aplicativo não receber registro de barra.
E, novamente, o objetivo é mostrar o formulário.
Então, mostre o formulário de inscrição.
ESTÁ BEM.
Então, para obter um registro de barra e, em seguida, nossa chamada de retorno aqui solicitação e resposta assim, e vamos
redistart renderizar e nós vamos chamar seu modelo de registro e, em seguida, a próxima coisa lógica a fazer seria
criar o formulário de registro.
Então, vamos fazer um registro de barras de exibição de toque.
E. J. Sim e depois abriremos o mesmo arquivo e, dentro
daqui, começaremos com um simples, digamos, inscreva-se e salve e asseguremos que possamos ver isso.
Então, comece o servidor, então iremos ao nosso aplicativo aqui.
Volte para o caminho da raiz para começar.
E agora vamos ao registro de barra e se inscreva para ele.
Ótimo.
Agora vamos adicionar um fórum e nosso formulário precisa ter duas entradas para o nome de usuário uma para a senha.
Então, vamos começar definindo um formulário e voltaremos e adicionaremos o método em ação.
Começaremos com uma entrada.
Ambos são texto digitado, embora possamos fazer com que o tipo de entrada da senha seja igual à senha, o que realmente
é uma idéia melhor.
isso e depois vou duplicar isso e farei o tipo de entrada porque a senha e o espaço reservado serão senha e salvar.
Então, o tipo de entrada é o espaço reservado ao texto, igual ao nome do usuário, assim como
E, então, vamos adicionar um envio e podemos fazer o tipo de entrada igual a submeter ou.
Ou.
Eu prefiro uma etiqueta de botão.
Qualquer um funcionará enquanto o botão estiver no final do formulário.
Ele enviará automaticamente o formulário.
ESTÁ BEM.
a senha e podemos começar por dar uma olhada nisso e vemos nosso formulário, mas estamos faltando duas coisas cruciais.
Então, envie e depois temos o nosso tipo de entrada porque o tipo de entrada de texto passa
Primeiro de tudo, o formulário não vai a lugar algum e mesmo se ele enviou algum lugar, ele não
enviaria nenhum desses itens porque não temos os atributos de nome.
Então, nós precisamos adicionar o nome igual ao nome do usuário e o nome é igual à senha assim e salvaremos.
Agora, se dar uma olhada na forma, nada deve parecer diferente, mas agora está quase configurado.
Agora precisamos adicionar as informações para a etiqueta do formulário.
Ou temos ação e método.
Então, a ação também será caixa registradora.
Mas nós vamos enviá-lo como um pedido de publicação e ainda não temos essa rota.
Então, se eu fosse e preenchi o formulário agora mesmo se eu atualizar e preencher o formulário, seria
apenas pendurar e, em seguida, acabar por expirar porque não temos um registro de barramento pós-estrada e isso
pode ser chamado qualquer coisa, é claro, mas é convencional para nomeá-lo o mesmo que o registro get barra de rotas.
Então, vamos fazer o mesmo e esta rota realmente seria responsável por manipular usuários e se inscrever
e nós faremos uma resposta de solicitação de função de registro de barra de publicação do aplicativo.
E aqui vamos adicionar toda a lógica para começar.
certeza de que está conectado OK.
Vamos fazer um bom descanso e registrar post-trib apenas para ter
E se reiniciar o servidor e voltar atualizar a página preencha alguns dados aleatórios e pressione enviar.
Devemos ver o post-rascunho registrado.
Aqui vamos nós.
Isso significa que nosso formulário está sendo enviado ao lugar certo.
Estamos batendo nisso agora, chegamos à parte divertida, onde é que lidamos com o usuário, inscreva-se em cerca de
10 novas linhas que você não viu a maioria.
Então vou começar escrevendo a sintaxe e depois vou pausar e passar por todas as linhas e o que ela faz.
E a primeira coisa que realmente precisamos fazer, que é uma revisão, é que precisamos adicionar analisador no
corpo e configurá-lo porque estamos tomando dados de um formulário.
Este formulário está enviando dados no corpo e queremos poder solicitar o corpo do pedido.
Use seu nome para a senha Quest Up Vadi.
Agora, aqueles ficarão vazios.
Então, no topo, precisamos fazer um aplicativo que use o banco do corpo, onde você codificou o URL e depois
adicionamos essa verdade estendida.
E essa é outra dessas linhas que você simplesmente se acostuma a digitar.
Nós precisamos, em qualquer momento, usar um formulário e publicar dados em uma solicitação.
OK, então está feito agora.
Então, devemos poder solicitar corpo para esse nome de usuário e senha que conterão o nome de usuário e
a senha do formulário com o qual o usuário está tentando se inscrever.
Então, agora estamos de volta à lógica e vou escrever algumas linhas que mencionei e depois
as explico depois.
Então, o usuário não se registra e, em vez do registro de dados do usuário, vamos passar no Novo Usuário e
no Novo Usuário.
Nós vamos passar no nome do usuário é igual a solicitar ao Oddy esse nome de usuário, mas não adicionamos senha
a esse novo usuário.
Na verdade, vamos adicioná-lo depois de criarmos o novo pedido de usuário para a vírgula de senha do corpo e então
vamos adicionar uma função de retorno de chamada e, em seguida, o usuário e então abriremos isso.
ESTÁ BEM.
Então vamos falar sobre o que fizemos até agora.
Nós criamos um novo objeto de usuário que não é realmente seguro para o banco de dados ainda é um novo usuário e só
passamos o nome de usuário.
E o motivo pelo qual fazemos isso é que na verdade não salvamos a senha no banco de dados.
Essa não é realmente uma boa idéia.
E eu vou mostrar-lhe o que realmente salvamos em vez disso.
Uma vez que recebemos algo em um banco de dados, mas não é a senha.
Então, o que fazemos é que passamos a senha como um segundo argumento para o usuário dot registrar e usar seu registro de pontos.
Tomaremos esse novo usuário que possui um nome de usuário e, então, vamos ter essa senha, o que basicamente significa que
ela transforma essa enorme cadeia de números e letras e armazena isso no banco de dados.
Então ele passa o objeto de usuário que queremos criar e depois passamos a senha separadamente.
E então, se tudo correr bem, ele retornará um novo usuário que tenha tudo dentro dele.
Tem nome de usuário e, em seguida, possui a senha hash também.
Então, vamos ver se isso funciona.
E, em vez de aqui, adicionaremos o nosso erro simples se houveremos um erro no
log do console e então também faremos um ponto vermelho para renderizar o formulário novamente assim.
E se não houver um erro, então temos outra linha a fazer, que é Passport dot authenticate local.
E novamente vou explicar isso depois.
Solicite uma função de resposta e, em vez disso, vamos redirecionar para a página secreta.
Então, isso acontecerá uma vez que o usuário tenha sido criado e não haja um erro se houver um erro.
Vamos renderizar essa página de registro e é aí que temos um retorno aqui.
Isso acabará por curto-circuito de tudo.
E se não houver um erro, vamos executar autenticação de passaporte.
Então, esta linha aqui autenticação de passaporte será realmente o usuário em quem cuidará de
tudo na sessão.
Ele armazenará as informações corretas.
Ele executará o método de usuário serializado que especificamos aqui.
E então estamos especificando que queremos usar a estratégia local.
E, no futuro, se quiséssemos usar outra estratégia e tivéssemos instalado, poderíamos mudar isso para ser
o Twitter ou o Facebook.
E há outras coisas que você precisa fazer.
Temos de se inscrever e obter credenciais no Twitter e Facebook e temos que registrar nossas aplicações.
Então, é mais complicado.
Mas, no que diz respeito à lógica e ao passaporte, podemos simplesmente trocar coisas dentro e fora e
há alguns pequenos ajustes que precisamos fazer.
Mas geralmente o passaporte facilita a troca de estratégias diferentes.
Então, vamos usar o local.
E isso novamente é realmente realmente logar o usuário.
E uma vez que o usuário tenha efetuado o login, iremos redirecionar para o segredo do segredo secreto e essa é apenas
uma escolha pessoal.
Podemos voltar para a página inicial da rota, mas o segredo é o que estamos todos aqui.
Então, uma vez que nos inscrevemos uma vez que nos registamos, devemos ser levados para cortar o segredo, a menos que
haja um problema e depois retornaremos ao formulário de registro.
Então, vamos testar isso, certifique-se de que não temos erros de sintaxe.
Parece bom.
Agora vamos ao nosso aplicativo e atualize a página e inscreva-se.
Então eu vou criar uma conta como Colt e minha senha será apenas senha e nenhum hit enviará e chegamos à página secreta que
é uma boa notícia, mas para realmente ter certeza de que funcionou.
Vamos parar o servidor e vamos abrir o Mongo e vou me conectar ao meu banco de dados, então vou mostrar Digby
e o banco de dados é Auth. aplicativo de demonstração.
vou olhar as coleções de coleções e depois vamos para D.
Então eu vou usar isso e então eu B que os usuários encontrem todos os usuários de DB e você pode ver, quero dizer, tornamos isso um pouco maior.
Nós temos um único usuário desde que acabei de me inscrever e há muitas informações aqui.
Bem, não há muito, há apenas algumas peças, mas parece muito.
Mais importante ainda, temos um nome de usuário aqui.
Seu nome, Colts.
Essa é a única peça que especificamos que parece normal para nós.
E então, existem essas coisas sal e hash e falo muito mais sobre isso na autenticação da
unidade de rascunho.
Então, não vamos entrar em muito detalhes, tudo o que vou mencionar sobre isso agora é que
a nossa senha bruta a palavra senha no meu caso não está armazenada no banco de dados.
O que estamos armazenando é esta versão de hash louco.
E então esse outro chamado chamado sal que nos ajudará a fazer isso.
E, ajudando-nos, quero dizer que tudo é cuidadoso pelo pacote de passagens locais do
passaporte que instalamos e reconfigurou como um plugue no qual fizemos aqui.
Então, isso cuida de tudo, desde o hashing até o salgadinho para armazenar coisas no banco de dados.
linha simples ou redimensioná-lo de novo o registro de ponto do usuário e passamos um novo usuário com um nome de usuário.
Tudo o que tínhamos que fazer era essa
E então ele cuida de tudo o resto.
Damos-lhe a senha do formulário, mas nunca o salvamos para o usuário.
Em vez disso, ele lida com tudo e nunca salva nenhuma senha.
Na verdade, está salvando a versão hash.
ESTÁ BEM.
Então vamos sair de Mongo agora.
podemos fazer é abrir a página de índice ou a página inicial, quero dizer, recitar que renderizam a casa.
E agora temos registro trabalhando a última coisa que
Então, vamos fazer as visitas do C9 sosh em casa e vamos adicionar um link para adicionar um aliado aqui e este link deve
ir para a página de registro.
Então, será uma tag ancorada com uma viagem igual a uma caixa registradora e nós vamos apenas adicionar inscrição
dentro do texto.
Então, agora, se iniciarmos o servidor, vamos limpar tudo isso fora do nó.
Sim e o aplicativo visitante e vá para a página inicial.
Agora temos um link de inscrição onde podemos inscrever-se.
Ótimo.
Então cobrimos tudo o que eu quero cobrir neste vídeo no próximo vídeo.
Trabalharemos na funcionalidade de logon.