Saiba porquê implementar o Google reCAPTCHA para evitar mensagens bot .NET Core dicas Marcius Bezerra…
00:40:00
Saiba porquê implementar o Google reCAPTCHA para evitar mensagens bot .NET Core dicas Marcius Bezerra…
E aí [Música] Oi e aí Carlos tudo bem com vocês hoje vamos para mais uma dica de dot net Core especificamente asp.net Core mvc né onde nós vamos ver como é que você incluiu o Google repete share na sua na sua aplicação e vencer o recaptcha é só aquele aquelas perguntas que são feitas tipo é quantas quantos ônibus têm nessa tela quantas bicicletas tem marcas bicicletas alguma coisa tipo que ela ele reforça a segurança para evitar que usuários do seu site crie robôs Ah e assim comprometa a performance do seu servidor né ou até derrubar um servidor Então vamos lá vamos criar aqui uma nova aplicação da cidade core.net mil Se você dá o comando como eu sempre repito das você dá um comando apenas lote net New ele vai mostrar as aplicações principais as mais conhecidas não é você vê aqui nós temos console web Api para você criar uma aplicação web vazia rezou nós temos aqui vídeo no canal para explicar sobre o riso também e blazer o server e cresce liebe né se você digitar também aqui vamos limpar show aumentar aqui né vamos ver como é que é o tamanho acho que tá bom aumentei demais tiver pronto se você daum.net New – – list Então você vai ter mais opções que são várias opções inclusive você pode baixar essas opções mas o que vai nós vamos criar e aplicação mvc né isso porque é mais comum você é o mais comum né eu diria assim e nós vamos incluir o riquixá nessa nesse tipo de aplicação que é o que o mais comum a rede seja o tipo de aplicação do Atlético olhe mais comum por aí na web né se você quiser é conhecer sobre os outros tipos de projetos e pode acessar Dá uma pesquisada no canal nós temos o conteúdo abrangente com vários vídeos que explica já falando sobre consuli sobre mvc e sobre Blazer sobre Razor pages e acho que eu posso tá esquecendo alguma coisa mas falando sobre vários desse tipo sair nós nós já contém planos aqui você pode dar uma pesquisada Então vamos limpar aqui nós vamos dar um em 16 né Vamos ter uma aplicação e vencer vamos dar um dot net new o mvc e eu posso colocar um menos o que significa o out o nome que eu vou dar essa aplicação então eu vou dar aqui o nome por exemplo é Google réptil riquixá Vamos colocar aqui maiúsculo bom então vamos limpar aqui e já vamos entrar aqui na pasta e vamos abrir vamos tentar de novo Vamos abrir aqui o nosso Já estamos na paixão Vamos abrir o nosso colete e abrimos Esse é o terminal ele já abriu aqui automaticamente então limpa Olha que ocorre o seguinte Bom primeiramente nós vamos chover aqui nós vamos para a documentação né o riquixá ele se você for aqui na página google.com como tá aqui www.google.com/aqui se você colocar por exemplo é rico ou rico tischer admin você chegar nessa página de mim se você tem aquela de Minas administração do recaptcha eu já tenho um criado nesse botão demais você cria um nós vamos criar um aqui nós vamos utilizar a versão 2 do riquixá porque é a mais utilizada não é é se eu não me engano Até onde eu sei é a mais utilizada é a mais antiga EA mais utilizada a três é um pouco mais complexa e talvez numa próxima vídeo aula e a gente vai explicar três Então você vai é colocar aqui no domínio que vai identificar a etiqueta se você quiser alguma ajuda ele mostra aqui use um marcador para facilitar a identificação do futuro é mais para você saber que site é esse né então vamos colocar aqui Cold total e você pode colocar o seu site aí o qualquer coisa que identifique aqui eu vou marcar dois e vou marcar tipo caixa de seleção eu não sou robô porque ele tem as opções também o selo recaptcha invisível e we capture para Android também nós vamos utilizar como nós vamos utilizar uma aplicação para web não tivesse a primeira opção aqui em Vilas vamos adicionar também não precisa no seu caso se tiver em produção você vai acionar o seu domingo mesmo de produção como nós vamos trabalhar em local host Então nós vamos adicionar o domínio em é O interessante é uma coisa que precisa ser observada é que é não é aceita até pelo menos até a finalização dessa aula não é assim que você colocar local rosto aqui você tem que colocar 127.0 1.041 não pergunte ao Google que eu não sei porque é que foi assim a gente vai colocar aqui https 127.0 1.0.1 que é porque se esse domingo não tiver adicionado significa que vai dar um erro você não vai poder utilizar o recaptcha mas como nos testes que a gente vai fazer a gente vai utilizar o esse domingo que é o local host né ele não funciona no local roxo a gente vai ter que mudar o preço do meio aqui nós vamos mudar manualmente para não perder tempo né Então você vai ter que colocar como ele como domínio permitido né aqui e vamos aceitar os termos e é onde é que tá a geração de Chaves nós vamos criar aqui essa aplicação aqui como que você tá vendo essa mensagem de erro o que ocorre é o seguinte na verdade aqui ele não quer que você coloca o protocolo ele quer que você coloca só o domínio Então nós vamos é excluir e vamos criar só Condomínio se você tiver um domínio você coloca o seu domingo aqui você não pode colocar o https na frente e nem uma porta depois né então você tem que colocar só isso aqui que é o domingo nós vamos utilizar eu vou adicionar aqui ele tá dando a mensagem ainda de aqui porque ele mantém essa mensagem né Não sei se é um bug mas ele não tem eu vou salvar aqui ó você viu que ele já pagou e aqui ele cria as chaves que é importante essas aqui mas os manter esse aqui na tela você vai ser no caso se você for utilizar esse introdução você vai ter que guardar essa chave sair né Então nós vamos voltar para nossa aplicação e vamos começar a codificar e nós vamos procurar aqui o nosso é index pontos shtml e olha eu vou executar primeiro aqui eu vou dar um coisa ficar com o dot net What’s né que você tem agora opção dot net Whats Antigamente você digitar what your você pode também dá opção do outlet Hum mas é o chuva está posto a pequena aqui bom então aumentar vai ficar grande demais né tá bom assim agora você tem a opção What’s né que significa ele ele cria ali um espécie live-reload né E hot-reload desculpa em que quando você modifica a página ele já vai refletindo lá no navegador Então vamos ver se ele vai compilar direitinho e ele no caso do MEC que ele pede minha senha eu vou colocar para permitir sempre e ele já está executando Pois é que estou aqui o é o como nós vamos voltar Vamos mudar essa frase é o Welcome para por exemplo Google o Rick chá E aí o exemplar e pronto vamos tirar esse papo aqui conto contra o comando esticar aqui no meu caso né E nós vamos criar agora aqui primeiramente primeiro de tudo a gente tem que é importante a gente tem que importar o script do Google para que o recaptcha funcione Então a gente vai ter que eu apague script aqui O que vai ter como essa src esse endereço aqui que nós vamos colocar isso aqui é essencial você vai ter que colocar isso https os://google.com/ [Música] o Rick chá e não tem esse em barra é ap.gg é se esse script aqui é essencial para funcionar e segundo a documentação ele aconselha a cadela assim você tem que eu não expliquei como é que você chega na documentação então a documentação o seguinte você até eu vou copiar aqui esse endereço né eu vou fiquei aqui alnova vou entrar no mesmo endereço só que eu vou mudar aqui tô colocando aqui é até lockers. Google.com reaction e Pronto acho que é só isso e aqui você já tá na documentação então vamos aqui em gastar 7 pronto aqui o centro o documentação e aqui você tem tanta água comenta ação da versão dois como a versão três na versão três vou desculpa na versão dois Você nota que ele quer que a gente coloca aqui o scrip e ele aconselha você utilizar o assim que descer né então é o que nós vamos fazer aqui a gente vai colocar aqui ó assim que o Dexter no escuro no Script e agora nós vamos ter que criar um form que vai representar o painel do Google porque quer então a gente vai criar um form é ruim quando a gente vai deixar tudo é nós vamos vamos trabalhar com layout por enquanto ele vai deixar vai ficar tudo realmente feio aqui então o Edson vai ser a gente vai deixar em branco porque o Action ele vai para o nosso próprio index né o próprio index que vai renderizar essa viu você vai já entender é o próprio index também do post né então gente vai criar um método o método post aqui e dentro do fome é aqui onde está o segredo do look at the share né a gente tem que criar que uma div com a classe chamada g-recaptcha chamada não com uma classe com o nome com esse nome né então G vi fechar Pronto tem que ser com esse nome e aqui você agora vai ter que você vai ter que ter aqui uma no atributo chamado site King e na verdade data site que né e onde você vai preencher ele e com o seu o site aqui que você tem aqui que eu aqui ele retornou para você então aqui aqui é uma chave secreta essa chave secreta você vai ficar só com você você não vai dar para ninguém e essa aqui é que você vai colocar no site se você ficar aquele copinho para você então ele copiou você cola aqui pronto e a gente vai ter que um botão submit né porque o botão submit porque esse botão já não faz parte é porque se você está colocando um clipe de Cher significa que você quer validar uma vamos assim uma ação usuário então aquele que eu tô submit ele só vai ser só vai funcionar se o recaptcha quer tiver o que então para que a gente se mui essa ação dos olhos vai criar um botão submit no formulário aqui então nós vamos criar aqui um botão e até aqui ó submit Button pronto um botão do tipo submit Oi e a gente vai colocar o valor dele como enviar simbolizando que ele só ele vai querer postar essa página mas ele só vai poder postar essa página se o ICQ chat ver o que deixa eu ver o que que tá faltando aqui será que o endereço outro we kept aqui então vamos salvar eu coloquei da tia site que né tá errado então vamos corrigir e corrigindo vamos ver como é que ficou ó já tá mostrando aqui você não acha que já tá mostrando o like share claro que pronto e quer pixar é só pra apresentar pra vocês é isso aqui tá perguntando motocicletas da então a gente marca aqui é até confuso marcar esse aqui aí vamos ver por lá ele pediu para furar não sei porque é semáforos Então vamos marcar aqui semáforos acho que é só isso como verificar passou e aquele tá postando porque a gente não tá a gente precisa falar verificar não é automática coisa né Vamos ter que verificar agora na postagem se deu tudo certo então agora a gente vai para o nosso home controle. CS onde nós temos o nosso index aqui e nós vamos criar o nosso index do tipo post né porque você quer um déficit puget né Nós vamos criar o nosso post que ele vai entrar nesse nosso index aqui quando o form for postado One Direction result e ainda ex também com o mesmo nome ó e aqui seria um httpget né então nós vamos colocar agora você pegar é só para ficar mais certo e aqui seria um http e Puxe esse index e quando ele postar é claro que você é chato não vai aceitar dois metros com o mesmo nome é mas para diferenciar esse aqui ele vai ele vai ter que receber o form Qual é o chão é assim que a gente trabalha com ele caption e vai receber o fome Collection e a gente vai chamar e se for no colégio aqui de forma colégio e e se eu tiver errado aí você me desculpe que eu costumo errar muito né tem que tomar marcando ainda aqui o que é só porque não está retornando o valor nenhum mas a gente vai retornar O que ocorre que nós vamos ter que fazer um post para uma url que está definido aquela documentação aqui tá com erro tudo bem né quem está desenvolvendo na documentação aqui da verificação se você for ele é mostra que nós temos essa url que nós vamos até copiar aqui nós vamos ter que fazer um post pessoal RL com esses dados aqui consiga ti o seguinte é aquela chave que só você tem né não é aquela chave que você colocou no no form né o response é um response que ele renderiza ele modifica é o posto do forma ele renderiza de maneira diferente ele posta esse esse resposta gente vai já ver aqui e o IP do usuário que tá postando né esse pé aqui ó opcional Mas é porque é o Google quer vamos ver é incentivar você A Ju tá isso com o Google Analytics né de maneira que você além de resolver resolver o recaptcha se tem alguma estatísticas do seu site lá né então vamos lá Bom primeiramente a gente vai ter que postar com URL comente viu Eh eu copiei essa URL aqui vai ter que dar um posto para cá um detalhe interessante é que esse post ele tem que ser do tipo ele não pode ser direito né Eu tentei fazer como disse não deu Sérgio ap talvez não sei se fosse antiga ela quer que seja aquele do tipo forma url-encoded né ele tem que ser Desse tipo aí então vamos lá E como você viu ele precisa dessas três variáveis Então nós vamos até criar elas aqui que nós vamos para ficar mais didático lá ver os preencher elas que vá uma delas é vá se Cristã Então vamos ver aqui o nosso Secret Vamos colocar ainda dessa maneira aqui vamos Qual é a outra vamos pegar aqui response então nós estamos aqui no vá response que nós vamos preencher vazio também vamos lá preencher ela e temos um remote e p né vá remote Ipê e eu vou preencher ela também assim e para que a gente passa esse posto primeiro a gente vai ter que preencher seus variados A primeira é bem simples que é um Secret que na verdade aqui quando você foi criar é uma das chaves é público eu falei essa aqui é a chave você crédito você vai copiar ela essa chave só fica com você né a que eu tô mostrando porque vai ser apagado É apenas para fazer o vídeo né mas introdução você vai ter que ter muito cuidado com essa chave quem é quem é essa chave usuário do seu site ele pode simplesmente fazer com que o robô a gente acha poder ele é passa pelo recaptcha é e simplesmente não vai ter efeito nenhum o seu like é de share pronto então o responsivo responsive interessante porque é o seguinte o que ocorre quando Nós criamos isso aqui ó esse essa div com a classe G traço we capture esse script aqui do Google ele transformou isso no input então ele chega aqui nesse forma Colégio Só tem um problema ele ele muda o nome ele cria um G ele capte Share response e pronto o problema é que se forme Collection Ele não retorna aí Segue como você vê aqui ele retorna o item que valores Então nós vamos mudar o nome dessa variável para o esforço e valores né isso porque para gente pegar o esforço mesmo a gente vai ter que dar um sponsee e é igual a response values. Force ou the fool E é assim que a gente pega o e nesse caso o sponsee é agora um gente tem que ela pode ser nula ou não né mas como a gente tem certeza que ela é a variável não é nula Então a gente vai utilizar essa maneira aqui outra coisa que a gente precisa de passar é opcional mas a gente vai passar aqui também o IP do usuário que a gente vai colocar aqui Quest com outro host. Isso aqui é o IP do usuário tanto que ele é estranho aqui ó então Se a gente pudesse enviar isso como Jason bastaria a gente instanciar aqui o nosso http-client né Pois é provar o http Client é igual a new e agora Super colégio e nós podemos fazer simplesmente é ponto post as Jason eu poderia simplesmente colocar aqui a URL né o e simplesmente criar que uniu criar que é uma classe mesmo é um diz assim uma classe anônima né uma classe anônima e colocar aqui a resposta né Security response né e podemos fazer remote P bom só nesse posto aí a gente já resolveria mas aquele enviar com o Jason é o grande problema é que ap ela não aceita o Jason não sei porque talvez você antiga não sei por qual motivo então nós vamos ter que criar na verdade né em uma postagem do tipo fome ou Elen Cury Então muda um pouquinho primeiro que nós vamos ter que criar o forma e data né então a gente vai aqui tem uma variável vá form data é igual a new http with Quest Messenger que é do tipo o post né ó e vai receber nossa URL e para que a gente trouxe transforme isso no form data a gente vai ter que preencher a propriedade contente de isso aqui é só para operar contente ela tem que ser tem que ser preenchida com 11 mil fome URL encontro de contas né e agora aí nós vamos ter que enviar aqui no form values né que é diferente do que nós planejamos anteriormente se fosse Jason né então nós vamos ter que criar esse form values né E se forme Vales É pode ser um Dictionary né então nós vamos optar por ser mais simples para a criar um Dictionary só nós vamos criar aqui no vácuo forme falo isso igual a aneel é de que é ver Dictionary né e esse Dictionary é do tipo string string o kid ele é strenger e o o valor dele é stringhi e já tá pegando os atalhos das sofisticações Você é chata eu já vou inicializar o dicionário aqui você poderia eu vou iniciar eu vou explicar também da maneira menos mais nervosa também aqui para você entender né mas eu vou primeiro finalizar aqui da Mangueira E aí eu iria comer nos código e mais dinâmico aqui então eu vou criar aqui um aqui chamada Secret e vou dizer que o valor dela é o nosso se que nós colocamos lá bloquear criar aqui uma que chamada é response ó e vou dizer que o valor dela é o responso que nós pegamos lá em cima né e por último nós vamos criar aqui uma uma aqui chamada remote e IP e vamos dizer que o valor dela é o Remote Play Opa em multi p e pronto Ah e não tem isso é isso aqui é que fechou nós temos aqui um dia que eu leve para você ter ideia eu vou mostrar da mandei rebolo sol é isso aqui é um atalho você criar um Dictionary não sei Sharp eu acho muito bom isso aqui você poderia você pode tá achando estranho essa sintáxi poderia você deve está acostumado com essa aqui vou criar um form values dois só para explicar aqui igual a nyu é Dictionary né do tipo Spring a esfinge isso aqui é o mais comum é o que as pessoas conhecem mais mas só que é bom que você aqui tem que ter uniu né o estado nesse erro é bom que você conheça bem os deixar para que você possa saber até escrever menos É então acho comum que você conhecia nós temos uma variável avaliar fome e valores dois né então eu posso chamar forma e vales dois aqui EAD de pronto era assim que você conhecia ser ótimo além de ter um que o vale né então eu colocaria aqui só fazer o primeiro lá o Secret né que eu Ok e o valo e seria o que o Secret que avaliava já já eu mostro aí então isso é igual a isso né aqui é porque eu já tô inicializando o Dictionary já tô fazendo aqui a inicialização dele com os valores uma maneira bem mais sofisticada ela é a mesma coisa isso aqui né então vou apagar porque que se resposta sendo marcado aqui e aqui pode ser nulo como eu tenho certeza que resposta não vai ser no Na verdade eu nem que essa certeza toda mas só para eu li só passei de baixo aqui eu vou colocar uma exclamação aqui eu sei Sharp 10 Aceita isso então quando eu coloco essa exclamação aqui significa eu tô eu tô querendo dizer que eu tenho certeza que essa variável não vai sendo lá então eu quero que ele pare de ficar reclamando né e aquilo que ele tá dizendo aqui aqui é outra coisa que é que significa o uso como eu falei eu uso um corretor ortográfico e ele tá dizendo que essa palavra remote p não existe se eu colocasse aqui pois é remote P ele não iria marcar por eu não ter essa variável né Inclusive eu posso até fazer isso né Olá boa olhada porta Agora ele deixou de marcar agora aqui eu não posso porque porque ele quer receber pela documentação é um remote P dessa maneira vai que se eu colocar o i maiúsculo o i maiúsculo ele não vai aceitar né então é melhor deixar assim eu não tenho certeza então vou deixar assim pronto o que ocorre aqui nós já estão passando aqui o forma e vale e agora nós vamos enviar primeiramente nós vamos fazer um teste vou criar Jeová r = o nosso clientes acessem o ponto send assim que a fome data nosso form data isso aqui é o metal sempre então eu vou ter que colocar aqui um await se você não entender sobre você pode ver também os vídeos antigos o canal que a gente explica bastante sobre a utilização do assim que doar leite e para isso eu vou ter que tornar esse método aqui assim Bruno como ele indica que meio que método de assim que pronta ele agora demora um pouquinho não sei porque Pronto ele já tá como assíncrono mas ele tá ainda marcando aqui porque eu não retornei Ainda nada para o método e agora a gente vai por hora eu vou criar um retorno como estendi pra gente ver qual foi o retorno do Google né então eu vou dizer que o criar que uma variável Pois é for result washes vou criar um X aqui que é só temporário eu vou dizer que ela é igual a r contente. Rede as string assim que porque para a gente a gente vai divulgar tentar divulgar isso aqui para ver qual foi o retorno do Google e no final aqui eu vou dar um result e a própria viu Calma que ainda não vai estar funcionando lado direito ante o que interessa a gente é ver esse result aqui o que eu vou até tá aqui um eu ia divulgar mas eu acho que até concurso rightline Eu dei um sedã Eu dei um CW de um tablet viu que ele preencher isso aqui para mim como construir o rádio on-line eu vou eu vou simplesmente jogar isso não possui esse x que foi o retorno do Google então agora a gente já pode acho que testar né Nós vamos para cá e vamos aqui uma atualizada pronto ficou tudo certo bom então ele tá pedindo tratores não vamos ver se a gente encontra aqui aqui um dois aqui não tem mais né vamos ver se vai dar certo ou marcou como certo vamos enviar ele deu aqui um erro é o é o seguinte fundo pequeno vacilo meu eu não posso colocar forma colégio aqui não eu tenho colocar a interface pronto então vamos salvar ele tá perguntando se eu quero reiniciar vamos dizer sim E aí e vamos ver aqui como é que ficou pronto Já reiniciou vão só dar uma atualizada e pronto então é marquei ele tá morre perguntando táxis Vamos marcar que os táxis Eu acho que só isso verificar tente novamente eu acho que eu errei faixa de pedestre vamos ver aqui e pronto já tá mudando para outro já está dificultando um pouco falar em dificultar eu já lhe mostrar o que você pode fazer quanto a isso e para quem da faixa de pedestre tô marcando aqui ó acho que não tem mais nenhum novo verificar passou vamos enviar pronto por enquanto nós não fizemos nenhum retorno e o que a gente tem que ver É o que ele retornou não sei se deu aqui eu posso ir não deu oi Lídia assistem assim que mas eu esqueci de colocar o ao leite né aqui Então na verdade ele não tá o retorno realmente o estranho então agora a gente vai reiniciar aqui E aí e dar uma atualizada pronto os novamente as motocicletas e aqueles é só isso já deu Ok vamos enviar aqui não deu nada mas aqui não consigo ele deu o retorno do Google olha veja só o retorno dele e ele é tolo sucesso igual outro os erros name e o Rodney bom o que ocorre é o seguinte a gente vai querer se retorno tipado então nós vamos criar aqui em cima você aqui não é possível fazer você pode criar por exemplo você pode criar uma paz tão models aqui já já tem não tem a pasta modo você pode criar aqui provisoriamente o Vamo que aqui em cima classe nova que vai simbolizar esse retorno Google por exemplo a gente vai chamar ela de ré que é chá Luis fonsi pronto Oi e a gente já sabe que tem um success aqui né então nós vamos ficar aqui uma propriedade própria e sabe gente a sabe que ela é Poliana né então vamos colocar como um BO aqui E vão chamar de roupas Sul as suas eu que escrevi errado pronto esse hostname’ não vai interessar para gente então gente vai deixar só por hora isso aqui só que a gente vai testar como é que é o retorno dele se a gente não preencher o correto né o recaptcha entendeu porque pode pode ser que isso tenha mais propriedades aqui pra gente criar a gente vai aqui atualizar novamente Não sei o que precisa mas vamos lá a gente vai errar propositalmente aqui e olha eu vou errar propositalmente aqui e tente novamente na verdade não tem como errar aqui né pular pronto não tem como errar Então como não tem como errar eu vou enviar sem fazer o like que Shake simboliza errada entendeu bom então vamos ver o que é que ele olha o que o que ele colocou e colocou success que a gente já tem a variável sucks aqui e colocou que uma coisa nova como que foi eu erro diz né a gente vai ter que criar uma propriedade o que não se tu me que ela é sinal de que ela é uma rede stringues é então a gente vai dizer que ela é uma rede esfinges vai dizer que ela hoje tem dar uma resistência e o nome dela é erro cores pronto mas você sabe que é na série A Série ação automático ser chato não vai conseguir ser realizar escrito que tem um traço né então nós vamos criar aqui mais uma coisinha para que a gente possa criar sua própria daí a gente vai criar aqui um quem é Jason property name né a divisão property name ó e vai dizer que essa própria o nome dessa propriedade é igual a erro Pode sim mas só que é um clássico É isso aí faz com que seja possível esse essa propriedade que tem wi-fi aqui na hora dos echarpe de se realizar ela Ele vai entender que ela essa referência à propriedade isso porque agora gente vai mudar no lugar deve retornar agora stringher aqui cadê o retorno esse chips aqui nós vamos falar mudar o nome colocar uma representativo né Nós vamos colocar coisa até quer fechar result e ele não vai mais ser um estilingue né a gente vai dar um Midi o som Jason assim que e o nosso tipo nós vamos passar o tipo que nós temos aqui que foi riquixá response a gente vai colocar aqui e pronto e pronto e aqui a gente vai esse aqui seria vamos chamar de resposta isso não pode chamar que nós a criamos aqui né então vamos chamar de Google o Luis fonsi e vamos falar colocar aqui também e aqui a gente não pode mais dar um Highline no objeto né é o que a gente vai fazer é o seguinte nós vamos criar um rio bag que vai retornar para nossa vio um sucesso um erro né então nós temos propositalmente nós queremos aqui a Vá a propriedade e rudes e a propriedade success porque porque aqui ele vai perguntar se ri caption result quanto success nós vamos fazer alguma coisa retornar para ver alguma coisa senão nós vamos retornar outra coisa nós vamos trabalhar para ser rápido aqui com gilbergues mesmo entendeu ele tá marcando aqui que os esse valor pode ser nulo como eu tenho certeza que ele não vai ser nulo eu vou colocar aqui nossa interrogação ou Nossa exclamação que faz parte do seu chefe 10 essas coisas então nós vamos dizer que se não houve erro então nós vamos dizer que e o nosso vídeo vão criar viu bag o ponto success Como que essa variável success e vamos dar aqui um retorno a qualquer Spring aqui pois é moleque quero te deixar e é resolvido com sucesso e isso e se deu sucesso calça contrário e a gente vai mostrar a primeira mensagem de erro para o usuário Então a gente vai dizer virou pegue você sabe que ele não erro é uma rei né nós vamos pegar o nosso riquixá resulte o erro code first How the full já que queriam uma rede Strings então ele vai retornar a primeira streaky ou vai retornar a Lulu né mas o certo é que ele retorne alguma coisa ou então caso retorne número para gente tratar direitinho até onde vai se isso aqui for nulo a gente vai retornar por exemplo Inclusive eu vou até colocar um condicional aqui apenas Vou retornar é o Rick que Chan inválido o próprio e o que é que eu queria civil Berg aqui né que na verdade esse wilberg você não precisa nem ter essas o Chaves aqui não queria só tem uma linha né é porque nós vamos tentar tratar isso navio agora e aqui navio nós vamos criar um div que é um a leste do Bootstrap a gente vai dizer que cresce dele é do tipo Alert Oi e a gente vai criar um Alert a success que pelo multi-step ele vai pintar de verdinho vai ficar bonitinho esse Alerta aí e a gente vai colocar nesse a leste O nosso wilberg vai colocar wilberg. a success problema que nós queremos duas hillberg então nós vamos ter que tratar o erro também então eu tudo clicando aqui toda não o shift Alt seta para baixo né e vou dar que o alert-danger Né que é vermelha causa de erro mas eu só vou mostrar essa se e o sucesso futuro né então eu vou dizer aqui se Oi gilberg. Success eu sei se for outro é que eu vou mostrar essa aqui então vou passar passar essa aqui para cima não é isso E caso contrário a gente faz um arroz aqui na verdade pode ser né ou então a gente pode até verificar se houve erro né sei lá se é Opa se nosso viu bag outro erro diferente no né se houve realmente eu então eu vou mostrar também essa aqui e é melhor que o Elvis né e pronto então se eu diferente no vou mostrar uma mensagem de erro e se não eu vou mostrar uma mensagem de sucesso que o próprio Bootstrap como o padrão um aplicação me ver vem me ver se ela já inclui Bootstrap ele já vai colocar só para preencher aqui pela documentação do Bootstrap ele quer esse rolo aqui como a leste né Vamos colocar aqui pode ser que algum problema e aqui também E aí o resultado algum erro aqui é viu pegue é um objeto né mas não pode converter para nulo Então a gente vai dizer vai verificar só isso que se é diferente no na verdade nós erramos aqui então se ele for diferente de nulo é porque Deus sucesso né Se o erro foi diferente de nulo é porque deu erro então é melhor assim e vamos ver se ele vai renderizar eu acho que a gente usou direitinho aqui já tá tudo certo aqui tá como local Rouche nós vamos colocar para 127 10.0.11 ele mostrou Vamos mostrar um errado onde eu não fiz e vou enviar ele tá dando inválido impulse response e nós vamos mostrar agora tentar mostrar um correto com barcos O interessante é que ele só passa daqui Se você acertar Porque aqui não tem a questão de dar errado né Entendeu então vamos verificar a ordem Ok vamos enviar e ele tá dando recaptcha resolvido com sucesso então esse foi o código aqui bem simples nós não estamos eu iria ainda como ao as Estendeu demais né a dica aqui eu iria ainda dar uma uma modificada no layout para ficar milhãozinho aqui mas eu acho que não é o foco realmente da Dica aqui falar sobre layout né bom então a gente pode deixar para uma próxima aula se lá mas é uma coisa que eu queria ver esses comentar foi sobre a dificuldade do recaptcha se você for aqui como acessar as configurações do ict já que você criou você vê que tem essa essa preferência de segurança e essa Barrinha aqui e Progresso quanto mais você puxa ela para cá com mais difícil vai ser o cara responder o questionário e mais para cá vai ser mais simples responder então é é como se deixar aqui no meio que já tá já é eu diria assim já é bastante seguro né mas se você quiser dificultar mais ainda você pode trazer ela vem para cá para pousa que vai ficar sem estressante vai ficar até estressado que a pessoa que vai utilizar seu site né bom então galera É isso aí eu peço desculpa que era para ser uma dica rápida Mas acabou que demorou não é mais do que eu estava prevendo se você tiver curtido essa dica se você tiver gostado desse dia que eu gostaria que você curte esse vídeo e se disse o canal para que eu tenho vocês incentivado a criar mais dicas né Nós temos muitas dicas interessantes pela frente aí então muito obrigado pela pela atenção
Very nice,thanks CodeTotal.I like it.