Saiba como criar sua primeira API | Valentin Despa | Skillshare
Pesquisar

Velocidade de reprodução


1.0x


  • 0.5x
  • 0.75x
  • 1x (Normal)
  • 1.25x
  • 1.5x
  • 1.75x
  • 2x

Saiba como criar sua primeira API

teacher avatar Valentin Despa

Assista a este curso e milhares de outros

Tenha acesso ilimitado a todos os cursos
Oferecidos por líderes do setor e profissionais do mercado
Os temas incluem ilustração, design, fotografia e muito mais

Assista a este curso e milhares de outros

Tenha acesso ilimitado a todos os cursos
Oferecidos por líderes do setor e profissionais do mercado
Os temas incluem ilustração, design, fotografia e muito mais

Aulas neste curso

    • 1.

      Apresentação

      1:16

    • 2.

      Introdução ao carteiro para trabalhar com APIs

      3:45

    • 3.

      O que é falha?

      1:30

    • 4.

      Como criar uma API em Olá

      6:07

    • 5.

      Como solucionar problemas

      6:29

    • 6.

      Como definir o banco de dados

      5:10

    • 7.

      Como obter dados do banco de dados

      3:37

    • 8.

      Salve no banco de dados

      5:58

    • 9.

      Projeto

      0:14

    • 10.

      Solução de atribuição

      1:19

    • 11.

      Como ler dados a partir de solicitação recebida

      4:46

    • 12.

      Como excluir dados do banco de dados

      8:25

    • 13.

      Como validar dados

      9:16

    • 14.

      Conclusão

      0:33

  • --
  • Nível iniciante
  • Nível intermediário
  • Nível avançado
  • Todos os níveis

Gerado pela comunidade

O nível é determinado pela opinião da maioria dos estudantes que avaliaram este curso. Mostramos a recomendação do professor até que sejam coletadas as respostas de pelo menos 5 estudantes.

351

Estudantes

2

Projetos

Sobre este curso

APIs são pão e manteiga de como funciona a Internet. Cada aplicativo que você usa no seu telefone, cada aplicativo da Web usado nas APIs em segundo plano.

Neste curso, você terá a chance de expandir sua compreensão de APIs realmente construindo um. Vamos usar uma plataforma divertida e fácil chamada Glitch.

Você pode usar o Glitch gratuitamente para escrever o código necessário e também para implantá-lo. Confie em mim, nunca foi tão fácil.

Quais são os requisitos para fazer este curso?

Embora não seja obrigatório, ele vai tornar as coisas mais fáceis se você já sabe o que é uma API e quais são os conceitos básicos em torno de HTTP.

Preciso de habilidades de programação?

Não vai doer se você já sabe uma coisa ou duas sobre como escrever código, mas isso não é um requisito. Vou passo a passo pelo processo. No entanto, este curso se concentrou em criar uma API simples e menos em programação.

Preciso instalar algum software?

Não. Tudo o que você precisa é um navegador e uma conexão estável à Internet.

Vou mostrar como usar a API no Postman, mas até mesmo o Postman tem uma versão online que você pode usar.

Você custou alguma coisa?

Nenhum pagamento é necessário. O plano gratuito no Glitch é mais do que suficiente para concluir este curso e criar alguns projetos por conta própria. Nenhum cartão de crédito é necessário ou qualquer coisa assim.

Conheça seu professor

Teacher Profile Image

Valentin Despa

Professor
Level: Beginner

Nota do curso

As expectativas foram atingidas?
    Superou!
  • 0%
  • Sim
  • 0%
  • Um pouco
  • 0%
  • Não
  • 0%

Por que fazer parte da Skillshare?

Faça cursos premiados Skillshare Original

Cada curso possui aulas curtas e projetos práticos

Sua assinatura apoia os professores da Skillshare

Aprenda em qualquer lugar

Faça cursos em qualquer lugar com o aplicativo da Skillshare. Assista no avião, no metrô ou em qualquer lugar que funcione melhor para você, por streaming ou download.

Transcrições

1. Introdução: Olá, meu nome é Valentine e sou um desenvolvedor de software. Praticamente todas as empresas hoje em dia usam APIs em suas atividades diárias para obter dados de outras pessoas ou para trocar dados dentro da organização. Apis são o caminho a seguir para integrar os diferentes sistemas de TI que temos para fazê-los trabalhar juntos como um sistema coeso. Eu sei que para muitos de vocês, o que uma API realmente permanece uma caixa preta. Nesta classe, você terá a oportunidade de criar sua própria API com base nos princípios que demonstrarei. Juntos, criaremos uma API para ajudar uma pizzaria a fazer pedidos de clientes. Nesse processo, criaremos uma API de descanso adicionando endpoints e aprenderemos a ler e gravar dados de um banco de dados. Se você nunca escreveu código antes, isso será um desafio. Mas se você quer sujar as mãos e não se importa de encontrar alguns erros de programação. Seja meu convidado. Tenho certeza que a experiência será muito gratificante no final. E não se preocupe se ficar preso. Estou aqui para ajudar. Então vamos começar a criar APIs. 2. Introdução ao cartaz para trabalhar com a APIs: Nesta palestra, vou apresentá-los a uma ferramenta de desenvolvimento e teste chamada carteiros. Bozeman é provavelmente a ferramenta mais importante que você precisa ter instalado em seu computador quando trabalhar com APIs já é usado por 10 milhões de pessoas em todo o mundo, por 500 mil empresas. E muitas APIs estão sendo desenvolvidas e testadas usando o Postman. E carteiros é inicialmente gratuito para baixar e usar. Então, na maioria dos casos, você não precisa pagar por isso. Então aqui mesmo de postman.com, clique em baixar o aplicativo. O aplicativo está disponível para Windows, macOS e Linux. Portanto, todos os sistemas operacionais são suportados. Agora, clique no botão Download se ele tiver detectado corretamente seu sistema operacional ou se não for um caso, você pode baixá-lo para Windows ou Linux ou qualquer outra coisa que você tenha aqui. O processo de instalação do carteiro em si é bastante simples. E quando você abre o aplicativo pela primeira vez, você pode ser recebido com essa tela. Então, nesta primeira tela, você é perguntado se você tem uma conta ou se você deseja criar com uma conta. Eu altamente recomendado para criar uma conta. Então você tem que clicar aqui, criar uma conta. Ou, se você já tem uma conta do Google, você pode usar a conta do Google e fazer um único login com o Google. Então essa é uma maneira de fazê-lo. Se você não quiser criar uma conta, basta clicar em algum lugar aqui abaixo. E teremos algo como me levar direto para o aplicativo. E isso permitirá que você use o aplicativo sem criar uma conta. Mas como eu disse, eu recomendo vivamente ir em frente e criar uma nova conta. Vou em frente e criar uma conta gratuita. E há, claro, algumas informações adicionais que estão sendo solicitadas aqui neste guia de configuração. Agora, infelizmente, não há maneira direta de como podemos pular isso. Então tente fazer o seu melhor e preencha as informações necessárias e continue. Você não precisa configurar uma nova equipe, então clique aqui em talvez mais tarde. E depois serás apanhado no Carteiro. Agora, inicialmente você verá este launchpad. Ele fornece uma visão geral de tudo o que você pode fazer com o Postman. Mas eu vou fechá-lo por enquanto porque eu vou guiá-lo através de carteiros passo a passo e para ter certeza de que você entende o que está acontecendo. Inicialmente, eu só queria que você tivesse esta ferramenta instalada em seu computador para que você possa acompanhar a próxima parte do curso, que será totalmente prática. Então agora temos Postman instalado, e vamos usar o carteiro para enviar solicitações de API para diferentes servidores e tentar entender como funciona HTTP, como as APIs funcionam. E carteiros é a ferramenta para isso, porque carteiro permite que você crie solicitação HTTP definindo diferentes partes. Assim, por exemplo, se eu estiver abrindo uma nova guia, será capaz de ver aqui que você pode selecionar o método de solicitação HTTP. Você pode digitar o URL da solicitação. Você pode definir parâmetros, você pode definir cabeçalhos, você pode definir o corpo. Então, há um monte de coisas que você pode controlar carteiros que você normalmente não seria capaz de controlar do seu navegador. Lembre-se de qual navegador podemos apenas enviar um pedido get e inspecionar algumas informações. E isso pode funcionar para algumas APIs. Mas se você quer entrar em coisas mais avançadas e realmente entender como HTTP funciona, você precisa de uma ferramenta como Bozeman. O carteiro é a ferramenta lá fora que é o mais popular e realmente bem projetado e fácil de usar. Pode parecer assustador. No início, vou levá-lo passo a passo e garantir que você entenda como usar carteiros para entender APIs. 3. O que é glitch?: Então, vamos primeiro falar rapidamente sobre o que é uma falha e por que estamos usando isso? Que é esta incrível plataforma online. Você pode até chamá-lo de uma comunidade que permite que os usuários criem aplicativos. E muitos projetos estão sendo publicados por outros usuários. Assim, você pode usar projetos existentes para construir o seu próprio. E você vai ver em um segundo o que isso significa. Normalmente, os usuários podem ser construídos para a construção de aplicativos web como sites, mas também aplicativos que servem apenas dados, como o que estamos construindo uma API que oferece muitas coisas que torna nossa vida mais fácil, oferece um editor de código muito bom onde podemos escrever código, mas também cuida do processo de implantação e nos dá muitos daqueles que nos ajudam a entender o que está acontecendo. Com isso. Estou aqui no github.com. Para começar a usar uma conta, você pode clicar aqui na falha conjunta ou clicar aqui na inscrição. O processo central é muito, muito fácil. Você só precisa selecionar uma conta existente que você tem com Facebook, GitHub ou Google, ou talvez até mesmo outras opções. Em apenas alguns segundos, você terá uma conta. Então eu vou fazer exatamente isso. Então, depois de entrar, isso é exatamente o que estou vendo. Não há outros projetos, então você verá na próxima vez que criarmos um novo projeto, você verá seus projetos aqui. Mas agora é isso que você vai ter que começar. E é perfeitamente se você conseguir ir tão longe, agora você tem uma conta com falha. E nos vídeos a seguir, vamos começar a construir o IPI. 4. Crie uma API de cumprimentos do mundo: Nesta palestra, vamos usar glitch.com para criar nossa primeira API. Então, sim, vamos começar com isso. Uma vez que você está conectado na aldeia, você deve ser capaz de ver que você não tem nenhum produto. Então o que eu vou fazer a seguir é ir aqui no botão de busca. Eu vou procurar um projeto existente que eu criei para este curso é chamado pizzaria Valentino nele. E deve ser muito fácil de detectar. Ele também tem este logotipo material aqui, então basta clicar nele. Então, isso irá mostrar-lhe o projeto e podemos clicar aqui em View Source. E é assim que o nosso projeto se parece agora, assim que eu o criei inicialmente. Agora, para que você faça alterações, nós precisamos tipo de nós vamos fazer uma cópia fora dele, a fim de editar qualquer coisa aqui, você tem que clicar aqui no remix para editar. Ou, adicionalmente, deve haver uma opção em algum lugar para remixá-lo. Então eu vou clicar aqui no remix para editar. E praticamente quando estou remixando, estou pegando um projeto existente e pegando todo o código, todas as configurações e tudo mais. É o que está naquele projeto. E eu faço uma cópia dele para que eu possa editar e não tem absolutamente nada a ver com os projetos anteriores. Então é por isso que eu criei este projeto inicial só para tornar nossa vida um pouco mais fácil quando estamos começando com isso. Assim que o projeto for carregado, você verá essa interface, este server.js. Este é o arquivo principal que vamos escrever, o código. Aqui é onde vamos definir o que nossa API faz e assim por diante. Você não precisa se preocupar com o resto dos arquivos, mas qualquer outro projeto conterá também arquivos adicionais que são necessários para que ele seja executado. Também aqui no topo, você pode simplesmente renomear este projeto como desejar. Cirurgião principal, chamo a minha materia Valentino. Você pode chamar isso de critérios como quiser. Então simplesmente renomeie lá. Você provavelmente está se perguntando a seguir, ok, então eu tenho esse código aqui. Como sei se está funcionando? O que posso fazer com ele? Vou mostrar-lhe daqui a pouco como começar com isso. Vemo-nos bem em cima. Você tem esse show de botões. O que você pode fazer é clicar aqui para ser exibido em uma nova janela. Então o que isso vai fazer é abrir uma nova guia no seu navegador. E vamos mostrar-lhe aqui um erro não pode obter, ele não pode obter barra. E isso é totalmente bom. Isso mostra que isso está funcionando. Então deixe-me dar-lhe uma idéia rápida do que está acontecendo aqui. Por que precisamos desse código e como tudo está funcionando? Então, como eu mencionei, o arquivo server.js é o lugar onde vamos fazer alterações. O código que você vê aqui é chamado JavaScript é uma linguagem de programação, muito, muito popular, normalmente relativamente fácil de usar. Agora, no começo, você vê que eu tentei fazer alguns comentários só para dar uma idéia. No início, estamos carregando algumas bibliotecas de código. Estes são alguns códigos adicionais que facilitarão nossa vida e nos permitirão escrever a API muito mais rápido do que teria que escrever tudo do zero. Além disso, aqui vamos também definir um banco de dados que vamos usar. Este será um banco de dados que será salvo em um arquivo, então será um banco de dados baseado em arquivos, nada com que se preocupar. Finalmente, aqui, vamos começar realmente definindo nossa API. E a parte em que estamos definitivamente interessados é que este ponto final. Então o que está acontecendo aqui é que eu defini um ponto final de status. A maneira que eu defini é dizendo aplicativo, ponto, obter e obter o método HTTP que eu quero usar. E aqui eu defini esse status de barra de valor. Então deixe-me explicar rapidamente o que isso faz. E eu vou diretamente para carteiros para copiar o endereço dos pedidos. Você vai ver neste caso, meu nome é pizzaria traço fu, que falha que eu. Se eu entrar no Postman, abra uma nova guia, cole o endereço aqui e escreva o status. Você vai ver que eu volte. Ok? Então, tudo bem, veio daqui. Então, agora vamos tentar fazer uma pequena mudança. Então, por exemplo, em um R aqui, baixo e não tem que tocar em nada. Eu não tenho que mudar nada. O aplicativo será implantado automaticamente em segundo plano para mim. Então é isso que a falha faz. Ele publica a API para este endereço. Então, se eu voltar aqui nos carteiros, vou ver que se eu clicar novamente na areia, isso volta Olá Valentine, e este é o endereço, então este é o nome do servidor, e este é o primeiro que definimos. Então não está fazendo muito. Mas pelo menos esse endpoint está nos dizendo que tudo está bem com o aplicativo. Então sabemos agora que os aplicativos funcionam. Esta é realmente a primeira mudança que eu convido vocês a fazer para este projeto. Faça-nos mais mudanças. Veja como o aplicativo está funcionando. Novamente, você pode usar aqui o painel de exibição para exibir o endereço no caso de você não ter certeza de quais os endereços. Então, mais uma vez, você pode simplesmente clicar aqui para ser exibido em uma nova janela. Agora este será o endereço do seu pedido, será um endereço diferente do que você vê aqui. Apenas mantenha isso em mente. E você pode alterar esse endereço renomeando seu projeto. E isso pode ser feito também muito facilmente. Se você conseguir fazer uma pequena mudança e obtê-lo implantado e carteiros césio, Bem, eu tenho que parabenizá-lo porque você acabou de conseguir criar sua própria API. E com base nessa pequena etapa, você verá que podemos continuar a adicionar mais endpoints e adicionar mais funcionalidades a isso. 5. Resolução de problemas: Então, nesta palestra, vamos dar uma olhada em algumas ideias sobre como solucionar quaisquer problemas que você possa encontrar ao usar delete.com, que é um serviço online. E de tempos em tempos, os recursos da interface de usuário que você vê podem mudar. Pode ser botões vai se mover em outro lugar. E sobre tais mudanças, eu não tenho absolutamente nenhum controle. Tenho certeza de que a idéia principal, a principal maneira de como você pode interagir com isso, será praticamente a mesma. Mas não fique frustrado se eu estou mostrando um botão em algum lugar no aplicativo e você não pode encontrar mais. Se talvez esteja em outro lugar, talvez tenha se movido, talvez tenha uma cor diferente ou algo assim. Espere que nem tudo será absolutamente exatamente como você vê no vídeo. Isso é apenas parte do processo ao lidar com essa ferramenta externa. Quando você está carregando a interface, quando você está carregando esta parte onde você pode editar o código, o editor de código, você pode enfrentar alguns problemas ao carregar a página. E se esse for o caso, se você perceber que ele está carregando e carregando e nada está acontecendo ou você está recebendo algumas mensagens de erro. Eu recomendaria que você verifique se seu navegador está atualizado. Talvez tente navegadores diferentes. Normalmente, um navegador como Google Chrome ou Firefox é uma boa escolha. Porque se o, se você mantê-los atualizados, esses tipos de aplicativos são testados no navegador mais recente, então diferentes problemas BME lá. Então, definitivamente, se ele não está carregando, se é lento ou algo assim, certifique-se de que seu navegador está atualizado. E assim que você começar a fazer mudanças, é importante que você não quebre nada. Ou se você quebrar algo, você entende que você sabe que algo quebrou e como você pode corrigi-lo sempre que você faz uma mudança de código. Por exemplo, aqui estou eu lá dentro, ok? Estou removendo essas aspas duplas. Isso será incorreto porque aqui eu estou tentando inserir uma string e eu estou aberto aqui, aspas, aspas duplas, eu não fechá-lo. Então você pode ver que está marcado aqui em vermelho, então está sob DOE K. Você vê alguma vontade vermelha também aqui no lado esquerdo você verá essas bolhas vermelhas. Então isso, se você vê algo assim, significa que há algo errado com isso. Além disso, se houver algo errado com o código, você também receberá algumas indicações aqui abaixo. Então você verá aqui nas ferramentas que há um erro. Então, se você clicar nele, você será capaz de ver os registros. E os logs também lhe darão mais idéias por que algo deu errado. Você sabe, apenas no caso de você ficar preso e você não tem idéia do que está acontecendo, certifique-se de que você me enviar uma captura de tela com o código que você tem com também abriu um log para que eles possam ver qual é o erro exato. Idealmente, você deve tentar descobrir por conta própria. É a maneira mais rápida de descobrir o que está acontecendo. Mas só para te dar uma idéia de como você pode, como você pode fazer algo assim. Está disponível lá. Então, eu vou consertar essa bolsa. E então você verá falha está começando a implantar o aplicativo novamente. Não mostrando erros. Então, tudo deve ser bom. Apenas no caso de você querer ir para os logs novamente, basta clicar aqui nas ferramentas. E você terá a possibilidade aqui de abrir os logs e manter os logs abertos de tempos em tempos é uma boa idéia porque ele mostra um pouco o que os aplicativos estão fazendo. Neste caso, você vê a última mensagem aqui é que seu aplicativo está ouvindo neste quadro. Então mensagem muito técnica, não se preocupe com isso, mas está mostrando que está fazendo algo. Na verdade, esta informação vem daqui. Portanto, toda vez que o aplicativo é iniciado novamente, esta mensagem aqui será exibida porque o aplicativo está sendo executado. Se você precisar fechar os logs, você pode simplesmente fechá-los a partir daqui. Às vezes pode acontecer que você faça uma mudança em algum lugar do código e nada acontece. Você vai para carteiros ou você está tentando se dirigir mais uma vez. E em vez de Moçambique, você mudou aqui o seu nome. Você ainda pode ver, tudo bem, mesmo que o código seja diferente. E isso pode ser muito frustrante. Caso isso aconteça, vá para Ferramentas e clique aqui no terminal. Mas isso abrirá um terminal onde esse aplicativo está sendo executado e lhe dará alguns recursos adicionais que normalmente não estão disponíveis. Então isso realmente permite que você faça coisas realmente complexas. Agora, a única coisa que eu convido você a fazer neste momento é abrir o terminal e digitar a atualização de comando. Você digita atualizar. Isso forçará o projeto a recarregar e causar uma reimplantação. Então, apenas no caso de você acha que o aplicativo ficou preso, ele não está mais atualizando ou algo assim. Aberto um tipo de terminal no comando refresh e isso será reiniciado. Esta é apenas uma idéia de como fazer a depuração não deve acontecer com muita frequência, mas é uma boa idéia saber onde encontrá-lo. Ferramentas, Terminal e um comando de atualização. Finalmente, como falha é um servidor on-line executado em uma infra-estrutura complexa, às vezes talvez seja culpa deles. Talvez algo esteja acontecendo. Eu tenho este status de página que glitch.com aqui para mostrar se há algum problema, se há algo que não está funcionando, especialmente seria interessante ver aqui se o editor está operacional, provavelmente também a API e o Hospedagem do projeto lado da comunidade. Então, apenas no caso de algo aqui não é áreas operacionais indicando quaisquer problemas. E você pode até rolar aqui abaixo para ver se há algum incidente passado. Isso lhe dará uma idéia de como o aplicativo em si, a própria plataforma está sendo executado. Então, é claro, se você está enfrentando alguns problemas e diz aqui na falha que sabe que algo está quebrado, então, você sabe, isso é normal. Mas se você está enfrentando um problema e aqui tudo parece estar bem. Muito provavelmente o seu navegador ou houve um problema com o código ou siga qualquer um dos passos anteriores que eu mencionei. Apenas no caso de você não conseguir descobrir o que está acontecendo, sinta-se livre para usar o Q e uma seção para me escrever uma mensagem, mas certifique-se de incluir o máximo de informação possível. Por favor, adicione capturas de tela, por favor, adicione seu código. Eu não tenho acesso ao seu computador ou ao seu projeto para entender o que está acontecendo. Então, a partir desse ponto de vista, sempre certifique-se de que você compartilha essa informação para que eles possam ajudá-lo se você está apenas vendo não está funcionando. Não faço ideia do que não está funcionando. Estou mais do que feliz em ajudá-lo, mas ajude-me a ajudá-lo com isso. 6. Definindo o banco de dados: Nossa pizzaria trabalha com um banco de dados para armazenar informações sobre pedidos, mas também o que está disponível no menu das pizzas. Até agora, definimos um banco de dados, mas está absolutamente vazio. Estamos armazenando dois tipos de objetos em nosso banco de dados, e um dos objetos é pizzas. Então, que tipo de pixels temos disponíveis no menu? E o segundo objeto que estamos armazenando são as ordens. Então esta luz os objetos que estamos armazenando no banco de dados. Agora ambos estão vazios. Veremos aqui que esta é uma matriz vazia. E aqui está uma matriz vazia por causa deste colchetes que não têm nada entre eles, isso significa que a matriz está vazia. Então o que vamos fazer a seguir é definir o nosso menu. Vamos o que está disponível em termos de opções para selecionar. Então eu vou definir aqui variável e, em seguida, começar com const. Então isso define uma constante. E Pietas é o nome da variável que vamos usar. Eu vou começar aqui com um colchete e indo para também terminou. E eu vou abrir esta chave encaracolada que também vai acabar. Nós definimos uma matriz, e dentro dessa matriz temos um objeto. Então eu vou começar a adicionar propriedades a este objeto. Agora, a forma como o objeto se parece muito. Json é apenas um objeto JavaScript que você verá muita semelhança com Jason aqui. Sempre que definido, por exemplo, uma propriedade chamada ID. Não temos que colocar entre aspas duplas como fizemos com Jason. Então isso é uma diferença. Mas muitos dos papéis que você notou no turismo ainda permanecem lá. Então temos uma propriedade chamada ID. Vai usar ID, pode-se também definir uma propriedade chamada nome. Então este seria o nome da pizza. E entre aspas duplas, digamos que a primeira pizza é prosciutto falso. E vamos definir uma propriedade final chamada preço. E presunto carinhosamente será 1299. Então esta é a primeira pizza que temos disponível e vamos copiar a estrutura. E eu vou me certificar de adicionar aqui coma depois de cada objeto. Caso contrário, este não seria um objeto válido. Então vamos fazer isso quatro vezes. O primeiro ID, o segundo id, o terceiro AD e o quarto ID. Vamos jogar um pouco com os prêmios. Então, digamos 1399, e isso será apenas 999. Além disso, vamos escrever alguns outros nomes. Então isso seria, digamos, uma margarita. Outra pizza pode ser um carbonara. E nosso último menu de pizza, frutas na América. Então este é o mais caro. Foi isso que fizemos até agora. Então nós definimos este objeto que representa uma matriz. E definimos todos esses besouros que você vê aqui. Só para tornar nossa vida mais fácil neste momento, nada mudará no próprio banco de dados. Nós apenas definimos essas variáveis. O que precisamos fazer adicionalmente é usar o objeto de banco de dados. Você verá aqui DB. E em objetos de banco de dados para eu vou usar aqui uma função que é chamada set. Dados de configuração tão práticos. Primeiro temos que dizer o que estamos preparando. Então, estamos tentando definir essa propriedade Pietas ou tipo de objetos que estamos armazenando, e também para fornecer os dados. Assim, os dados podem ser fornecidos por referência a esta variável que temos aqui, ou inserindo diretamente a matriz. Eu só queria tornar as coisas um pouco mais fáceis. Então vamos simplesmente dizer, certo? Então, é como ter certeza de que você salvar essa informação. Agora, certo? Você pode notar aqui que nosso banco de dados é armazenado em um arquivo. Agora, infelizmente, você não será capaz de ver este arquivo aqui porque este não é o arquivo público, nem um dos arquivos que você estará armazenando diretamente no projeto , como dados privados. Mas se você copiou este endereço que você vê aqui, você será capaz de ir em Ferramentas abrir aqui o terminal. Vou usar um comando chamado CAT. Gato. Vou simplesmente colar o endereço do arquivo em nosso banco de dados que copiei do código. O que vai acontecer aqui é que tudo vai obter o conteúdo do arquivo. Vou pegar o conteúdo do banco de dados. Agora este é um banco de dados que é armazenado em um formato JSON. E você pode ver aqui agora que tudo está usando o formato JSON. Então você verá que temos dois objetos. Nós temos o objeto pizzas e nós temos o objeto ordens. E, claro, agora as pizzas já foram povoadas com o nosso menu. Nosso trabalho nas palestras a seguir é começar a aceitar pedidos através da nossa API. 7. Como obter dados do banco de dados: Antes que possamos começar a aceitar pedidos, precisamos dizer a todos o que temos no menu porque ninguém mais de fora será capaz de ver nosso código um pouco para ver o que definimos no banco de dados ou o que temos dentro do código. Então, precisamos definir um endpoint para dar essa informação sobre todas as pizzas que temos disponíveis. Então agora dentro do código, vamos para aqui na parte API do nosso código. Vou simplesmente copiar este código aqui. Então este é o ponto final que foi este encontrar o ponto final de status. Vamos simplesmente copiar e colar aqui. E este será o ponto final pizzas porque queremos obter aqui uma lista de todas as peças que estão disponíveis. Agora, em vez de status, vou usar pietas porque é assim que eu quero que este endpoint seja chamado. Se você chamar, você vai ter uma lista de pizza. Então isso é uma coisa normal de se fazer. Antes de continuarmos. Vamos simplesmente aqui na resposta, algo como pizzas, e primeiro dê uma tentativa para ver se este novo endpoint foi implantado e está trabalhando sobrenadante vai para Postman. Aqui em Bozeman, eu posso simplesmente abrir uma nova guia e direita, pizzas. E você verá agora que esse endpoint foi definido. E, em seguida, voltar aqui pietas, se eu não definir um endpoint em meu aplicativo, ele não existe. Ou se, por exemplo, eu tentar aqui para obter os pedidos, você verá que você recebe um 404, não pode obter pedidos porque eu não defini nenhuma ordem. Então é por isso que está funcionando ou não. Você ganha um 404. Verifique se o endereço que você definiu dentro seu código em falha é o mesmo com o que você está tentando ligar. Agora que estabelecemos que o endpoint está funcionando, é hora de ler dados do banco de dados. Agora imagine o seguinte. Vamos definir aqui, constante. Então esta é uma variável. Digamos que são simplesmente dados. E do banco de dados, agora estamos tentando obter informações. Então vamos dizer ket, e vamos especificar que estamos tentando obter pietas. Nós também vamos chamar outra função que simplesmente vai nos dizer, nos dar o valor, nos dar a informação que está disponível lá. Não precisa se preocupar muito com Entenda todo esse código. Não é uma aula de programação. É simples. Ok, se você seguir adiante, se você fizer exatamente o que eles fazem para ainda lhe dar uma idéia de como as coisas funcionam em termos de APIs. E agora temos esses dados aqui disponíveis em vez de dar uma string aqui como fizemos antes. Então, responda, envie estas pietas que você ainda vê no Carteiro. Substitua isso e certifique-se de que você substitua e remova também as aspas. E nós vamos dar-lhe este objeto de dados. Então, sem as aspas, estamos realmente dando uma variável. Se você tivesse usado o tribunal vai apenas dar uma corda. Voltar aos carteiros vai enviar isso de novo. De repente, isso está começando a parecer uma API. Então você verá aqui os dados exatos que temos no banco de dados é um formato JSON. Parece muito bom. Então lista desordenada de todas as peças que estão disponíveis com ID. Então é assim que você pode ler informações deste banco de dados simples e torná-lo disponível através da API. Se não tivéssemos definido esse endpoint, esses dados não estariam disponíveis. 8. Salve no banco de dados: Agora que temos um menu representando todas as pizzas que alguém pode encomendar, é hora de começar a trabalhar. E nossa API de pedidos que pode receber pedidos de clientes. Só estamos tomando ordens para ir. Tentamos manter os números simples, mas ainda é importante que nós os salvamos em um banco de dados. Então vamos em frente e definir um ponto final de ordens. Novamente, vou copiar o código que já temos aqui só para ter certeza de que você não está cometendo nenhum erro. O que você vê aqui em cinza é um comentário, então é algo que não é executado. Você pode escrever qualquer coisa lá. E também, você pode escrever algo assim aqui. Este é um comum. Agora, as ordens e o ponto. Como você se lembra das APIs de repouso, queremos dar um significado ao verbo HTTP que estamos usando. Então nós temos, temos vindo a obter informações do banco de dados. Mas agora que queremos criar uma, criar uma ordem, faz sentido mudar essa palavra. Então, em vez de obter, vamos usar aqui post. O que significa que se você tentar obter este endpoint, que é atualmente pizzas, mas serão pedidos. Se estamos tentando obter seu endpoint com uma solicitação get, este endpoint não existirá porque nós definimos apenas para as solicitações HTTP post em esquecer, como fizemos com pizzas e status, por exemplo. Vamos escrever aqui a ordem de resposta recebida. E vou apagar isto. Então, o primeiro passo, como sempre, apenas tente certificar-se de que esse endpoint funciona. Voltando para o carteiro abrindo uma nova guia. Agora, como você se lembra, se eu tentar, isso não deve funcionar. O ponto final não existe. Você vê aqui um código de status 404 não está lá. Se eu selecionar post, o endpoint existe agora ele diz ordem recebida, mas é claro, nós não enviamos nenhum dado e nós definitivamente não recebemos nenhum dado. Então temos que mudar um pouco de aplicação. Temos que tentar entender como podemos salvar informações. Então vamos começar a pensar sobre a estrutura, o tipo de dados que queremos salvar. Agora definido aqui e o objeto começará com o nome da variável será ordem igual. E agora começamos a adicionar algumas propriedades. Por exemplo, vai precisar de um ID de pedido. Isso é algo que normalmente gera por um banco de dados. Mas como nosso banco de dados é bastante simples, vamos usar uma ferramenta externa que foram gerados ID exclusivo. Queremos identificar exclusivamente essa ordem. Então precisamos de uma string única ou número único que não entre em conflito com os outros. Eu vou usar aqui esta função chamada nano ID e resposta bio-resíduos perguntando, onde isso vem? Esta é uma das coisas que carregamos aqui no início. Então esta é uma das mágicas de usar outras bibliotecas, outros pedaços de código em nosso código apenas para tornar nossa vida mais fácil. Então isso vai cuidar de gerar uma string aleatória para que não tenhamos que fazê-lo. A segunda coisa que estamos interessados é para o nosso pedido saber qual cliente Pizza um ter. Então, por essa razão, vamos adicionar outra propriedade chamada Pizza ID. E digamos que o PID está aqui também. Só estou codificando essa informação só para ter certeza de que tudo funciona corretamente. E finalmente, seria bom ter o nome do cliente. E a simplicidade aqui, John. E estes serão os dados que temos. Então esta é a estrutura de dados. É assim que gostaríamos de salvar as informações no banco de dados. Sabemos quem encomendou, sabemos a identidade da pizza. Então, sabendo a idéia do ID de pizza para simplesmente significa que o cliente pediu pizza margherita e também irá gerar um ID único. Claro, podemos adicionar outras informações como data do pedido e assim por diante. Mas vai tornar as coisas o mais simples possível. Agora, até agora nós só definimos aqui variável, isso está fazendo absolutamente nada. Precisamos salvar essa informação em um banco de dados. Vamos usar DB que começa a obter o banco de dados para dizer que estamos tentando obter as ordens para querer trabalhar com o objeto ordens, mas não queremos obtê-los para obter o valor de m como fizemos anteriormente com o pizzas. Na verdade, queremos acrescentar informações adicionais. Então, estamos adicionando informações adicionais. Vamos usar o “empurrão”. Bonita, muito simples. Vamos fazer referência ao objeto aqui. Então eu vou dizer o que queremos empurrar, o que você quer acrescentar? Vamos adicionar o pedido. Então esta é a ordem. E também somos instruídos para a direita. Agora temos aqui a ordem. Então vamos fazer exatamente a mesma coisa e dar uma olhada no que está acontecendo no Carteiro. Então, vou submeter isto de novo. Aqui. Nada mudou. Aqui infelizmente, novamente, temos que olhar para o arquivo para ver o que está acontecendo. Então eu vou copiar novamente o caminho. Abra as Ferramentas, abra um gato terminal. Você será capaz de ver agora que no objeto de ordens, agora temos uma ordem. Então esta é a idéia aleatória que foi gerada por esta biblioteca e será o tempo todo diferente. Este é o ID da pizza e este é o nome do cliente. Não precisamos de mais do que isso. E acabamos de demonstrar como salvar dados no banco de dados. 9. PROJETO: Abrir um terminal, tentar ver como o banco de dados parece é um pouco irritante. Então, por essa razão nesta atribuição, é seu trabalho criar um endpoint completamente novo que nos dará todos os pedidos que estão disponíveis. 10. Solução de atribuição: Então, a fim de criar o endpoint de pedidos, não precisamos fazer muito. Nós já temos uma boa idéia sobre como fazer isso olhando para o endpoint pizzas. Então eu vou copiar isso, colá-lo aqui. Assim serão as ordens e apontar e podemos até renomear cidadãos uma ordem de lugar e ponto. E estas são as ordens de obter. Então, só para nós sabermos que estamos tentando entrar em situações, é claro, não estamos tentando obter pizzas, estávamos tentando obter ordens. Então o ponto final será ordens. Desta vez vamos usar HTTP get. Então app.get irá certificar-se de que usamos HTTP GET. E é claro que não estamos interessados em pizzas. Vamos receber ordens. E estas são as únicas mudanças que são necessárias para ter as ordens e apontar. Está indo Carteiro e dê uma olhada. Então, aqui em vez de post e honesto, simplesmente mudar para obter. E eu estou aqui às ordens e ponto. E verá que só tenho uma ordem. Ainda é muito mais fácil usar este ponto final para ver os dados no banco de dados. Em seguida, olhando dentro do arquivo JSON. 11. Como ler dados da solicitação recebida: Até agora, nosso endpoint de pedidos é bastante inútil porque temos alguns dados que são codificados, que nunca muda. E ignoramos completamente tudo o que está sendo enviado pelo cliente. Nesta palestra, vamos dar uma olhada em como podemos ler informações da solicitação e usar isso no script e salvá-lo no banco de dados. Voltando aqui ao pedido, vamos tentar entender o que devemos enviar. Não vamos enviar a identificação. Queremos enviar uma identificação de pizza e o nome do cliente. Portanto, esta é a única informação que estamos interessados em enviar. Então, indo para carteiros vai selecionar aqui um pedido de postagem. Vou até o corpo, selecionar a linha. E na lista suspensa e selecione Jason. Então esta parede enviada, isto vai permitir-nos enviar JSON para aqui. Praticamente o que é solicitação JSON de carga útil adjacente. Agora, como eu copiei isso do JavaScript, como você se lembra, isso não será válido decente. Então precisamos colocar isso entre aspas duplas para que ele pareça como deveria parecer. Estes são praticamente os dados que estamos enviando. Então vamos enviar por exemplo, ou ensolarado aqui, p psi d um. E carteiro, podemos até fazer coisas muito interessantes como criar uma variável aleatória. Então, esta variável aleatória nos permitirá ter alguma RAM que audiência dados para o nome. Vamos procurar o primeiro nome aleatório. Esta é apenas uma maneira de tornar nossa vida um pouco mais fácil quando estamos enviando dados. Neste ponto, se enviarmos, vamos criar dados com a informação do Harcourt. Só quero ter que postar pedidos preparados com tudo o que precisamos, apenas para ter certeza de que quando voltarmos, tudo está funcionando corretamente. Aqui dentro do código, ainda temos algumas coisas a fazer porque a informação é codificada, precisamos lê-lo a partir da solicitação. Como você notou aqui, temos duas variáveis disponíveis. Um é o pedido e o outro é a resposta. Em qualquer comunicação HTTP, temos a solicitação que vem do usuário e estamos criando a resposta. Você sempre vê aqui. Estamos escrevendo resposta, enviar, e estamos decidindo com o que responder. Quais são os dados que estamos enviando de volta? Podemos mandar ok. Podemos enviar dados do banco de dados e assim por diante ou o recebido. Ao mesmo tempo, ainda temos o pedido. E até agora não usamos a solicitação de uma forma porque o usuário só entrou, usamos o Postman apenas para acessar um endpoint específico. Temos informações lá. Na verdade, estamos enviando informações para o servidor, pool, nosso aplicativo neste caso, e precisamos ler essa informação. Então, por essa razão, temos que usar pedidos. Então nós vamos substituir, por exemplo aqui pizza em vez deste id para meio aqui, pedir corpo ponto. Então, dentro do objeto de solicitação, estamos recebendo a propriedade body. E o corpo conterá identificação de pizza, pelo menos esperamos que contenha esta propriedade. O mesmo acontecerá aqui com John. Então, em vez de John, vamos usar o pedido de ponto corpo, ponto cliente. Agora eu preciso ter certeza que o que você está enviando bate com o que você está lendo aqui. Então Pizza ID não é o mesmo com apenas pizza ou cliente não é o mesmo com o nome do cliente. Então, se você está esperando Nome do Cliente, isso é o que você precisa enviar do carteiro também. Vou demonstrar que o DID permanece o mesmo. Temos agora o PID, que estamos lendo do corpo do pedido. E este tipo de convenção aqui que vamos enviar JSON e também o cliente virá de lá também. Voltando ao nosso pedido, temos que o PID estava gerando um nome de cliente aleatório. Então eu vou bater aqui enviar. Diz ordem recebida. Vamos verificar se o pedido foi realmente recebido. Estamos fazendo aqui um pedido get sobre as ordens e seria capaz de ver que, de fato, temos duas ordens. Esta é a segunda ordem que foi gerada. Bozeman gerou um nome aleatório para nós marcadores. Temos a identificação da pizza, que é uma, e esta aqui. Neste ponto, nossa aplicação agora é útil. Podemos receber ordens. E isso é absolutamente ótimo, porque agora nosso cozinheiro pode começar a trabalhar em pizzas. 12. Excluindo dados do banco de dados: Agora assumindo que o cliente já pagou para a pizza, pegou, não precisamos mais de informações sobre pedidos existentes em um banco de dados. Então, nesta palestra, vamos dar uma olhada em como podemos limpar nosso banco de dados e excluir quaisquer pedidos que não precisamos mais. Antes que possamos excluir um pedido, temos que pensar sobre o endereço que queremos usar. Então vamos entrar no Carteiro e tentar entender o que estamos enviando e como podemos excluir um pedido. Até agora têm distúrbios. Estamos usando as ordens e apontar para obter todas as ordens. E estamos usando o mesmo endpoint com as diferentes solicitações de uma pose de semana para criar um novo pedido. Mas agora, se você quiser excluir algo, não queremos excluir todos os pedidos. Nós só queremos excluir um pedido específico. Por essa razão, o endereço em si não pode ficar dessa maneira porque será difícil dizer exatamente o que estamos tentando excluir. Porque temos estas ideias aqui. Torna a nossa vida mais fácil porque podemos dizer algo assim. Podemos adicionar uma barra aqui e especificou este ID. Se você tinha um Get, É vamos especificar que você está tentando obter apenas uma ordem específica, não toda a lista de todas as ordens. Não implementamos isso. Mas, por exemplo, por bio paralelo, se você quiser excluir uma ordem específica, podemos mudar de get to delete. E é assim que seremos capazes de especificar de uma maneira muito agradável que segue as demais convenções. E nós vamos especificar o ID aqui para que saibamos que estamos excluindo aqui em ordem se, de fato, mesmo que a string pareça muito estranha, estamos aqui dentro de ordens, estamos usando a exclusão. Então a semântica é que eles estão tentando excluir algo e nós fornecemos este parâmetro aqui, nós não precisamos enviar ninguém ou nada parecido. Então muito, muito fácil maneira de como podemos expressar este endpoint. Desde agora, entendemos o que estamos tentando fazer em termos de como queremos que nosso endpoint se pareça. Vamos entrar no editor de código e tentar implementar isso. Novamente, vamos começar com algo que temos e tornar nossa vida mais fácil e reduzirá as chances de cometer erros. Vamos ver aqui que estamos tentando excluir uma ordem, a ordem. E em vez de chegar onde eu vou usar delete, porque queremos usar o HTTP para excluir árabe, neste caso, ainda indo para ordens, mas ainda precisamos tipo de dizer ao nosso aplicativo, hey, lá está com ordens, Mas depois das ordens ainda há algo vindo. E a maneira como fazemos isso é bastante semelhante à forma como fazemos em Bozeman também é uma convenção solúvel. Usamos coluna e aqui podemos especificar uma variável, chamá-lo ID do pedido. Não importa como se chama, é só uma convenção. Então o que está acontecendo aqui é que o aplicativo vai entender, ok, vamos chegar aqui algo que muda o tempo todo não é fixo como pedidos ou pizzas ou qualquer coisa assim. É uma variável, prática. Assim, nos permitirá lê-lo para acessar esses dados. Você terá adivinhado? Ainda vem do pedido. Por isso, é parâmetros de ponto de solicitação porque é uma espécie de considerado como um perímetro. E estamos usando exatamente o mesmo sabia que nós especificamos aqui. Vamos continuar e salvá-lo em uma variável chamada ID do pedido. Então, temos o ID do pedido inicializado com isso. Não se preocupe com os pontos de seta aparecendo aqui é apenas porque estamos usando esta variável de dados que não existe mais. Então podemos ver aqui ou deletado. E podemos até mesmo e aqui o ID do pedido que lemos apenas para ter certeza de que é o mesmo ID do pedido. Então esta é a sintaxe. Estamos enviando algo como uma string e eu também estou adicionando esta informação adicional que lemos a partir da solicitação e enviando de volta para o cliente. Então, se eu estiver enviando este pedido aqui, veremos algo como pedido excluído e este será o ID. E você deve notar que as idéias absolutamente as mesmas. Então este é apenas um teste que nosso endpoint está funcionando. Como você percebe em todo o processo de desenvolvimento, estamos tomando esse processo iterativo. Não queremos escrever muito código, sem entender o que está acontecendo. Nós o levamos passo a passo. E se algo não está funcionando, volte para o trabalho antes e tente entender por que não está mais funcionando? Nesse caso, testamos que o endpoint está funcionando. Estamos fornecendo esta identificação aqui. Realmente não importa o que fornecemos porque não há nenhuma funcionalidade por trás disso. Mas como pode ver, vamos enviar isto de volta. Então, neste momento, sabemos que temos essa identificação. Só temos que falar agora com o banco de dados e dizer ao banco de dados, hey, vamos trabalhar de novo com os pedidos até comer qualquer outra coisa. Eu vou dizer aqui, o próximo aqui. E nós vamos dizer aqui, Ei, queremos remover algo desta vez. E vamos especificar um pouco como com base em quais critérios queremos identificar esses dados. É por isso que temos identificações. Assim, como você pode identificar facilmente, não queremos excluir pedidos do banco de dados com base no nome do cliente. Talvez sejam dois microfones que aparecem ao mesmo tempo. Não será uma boa ideia usar isso. Então é por isso que estamos usando esses IDs exclusivos. O cordeiro especificar aqui ID, e este é novamente o ID do pedido que estamos dando. Considerando que você pode notar que o parâmetro que está sendo enviado para disfunção é um objeto, e esse objeto tem um ID de propriedade. Estamos definindo essa propriedade com nosso ID do pedido. Nós também queremos manter este aqui para fazer esta mudança no banco de dados omega nada uso, certo? Assim como fizemos quando temos empurrado uma ordem, nós também usamos, certo? Então isso só diz ao banco de dados salvo esta versão que estamos enviando aqui. Vamos dar uma olhada no seguinte. Então, novamente, eu vou chamar todos os pedidos em uma aba diferente para que possamos dar uma olhada neles. Ainda temos dois pedidos no banco de dados. Vou usar a primeira ideia ou a segunda identificação não importa. Fornecido aqui como um parâmetro, consentimento. E diz ordem deletada. Se eu olhar no banco de dados, você verá que o pedido não está mais lá. Assim, a ordem foi realmente apagada. Se é difícil trabalhar assim, eu posso simplesmente substituir este ano por uma coluna também. Chame de ID do pedido. E você vai ver que carteiros irá automaticamente adicionar este novo bloco aqui de variáveis de caminho. Isso torna mais fácil para mim definir uma variável aqui. Vamos também excluir este outro pedido que ainda está disponível aqui. Então este é um nomeado como recebendo todas as ordens. Vamos deletar este também ou deletar. Então, se voltar a ligar, verá que está vazio. Precisamos criar mais alguns pedidos. Basta clicar em enviar algumas vezes. Podemos olhar dentro das ordens. E você vai notar que temos mais clientes para a nossa pizzaria. Mesmo que seja um exemplo muito simples. Ele ainda mostra como você pode definir uma API que diz como podemos trabalhar com ela. Especialmente quando se trata de excluir seguindo este resto convenções usando os métodos adequados. É definitivamente algo que faz sentido. Agora, eu não estou dizendo que você pode usar aqui app.get e simplesmente usar um pedido get para liderar esta informação. Mas isso seria bastante inesperado porque alguém vai pensar que eles estão apenas recebendo a ordem e não realmente excluí-la. É por isso que faz muito sentido ter este romântico. Quando você é selecionado aqui em carteiros, quando você está selecionando obter, você está esperando obter dados. Quando você está selecionando postar, você está enviando dados, alterando algo no servidor e nós estamos selecionando excluir, você não deve se surpreender por estar excluindo dados no servidor. É por isso que seguir esta convenção em seu código também, em sua aplicação que você está escrevendo aqui faz muito sentido. 13. Validação de dados: Estou tão animado quanto você para lançar esta incrível API para todos, mas acho que ainda não estamos prontos. Deixe-me mostrar-lhe em um segundo o que quero dizer. Se eu estiver indo, por exemplo, dentro de carteiros e eu estou olhando para o pedido que responsável por aceitar ordens. Digamos que renomeie este Nome do Cliente e enviei. Ainda diz ou o recebido. Então, por exemplo, se alguém tentou obter todos os pedidos, todos ver aqui provavelmente no final da lista que eu tenho um pedido sem um nome de cliente. Bem, isso não é bom porque não sei quem encomendou isto. Este é o ponto em que precisamos falar sobre a validação de dados que vêm do cliente. Neste caso, o Carteiro é o cliente. Estamos enviando esses dados para a API, não aceitando, não tendo um nome quando você está fazendo um pedido. Não é uma boa ideia neste caso. O que podemos fazer? Precisamos de uma maneira de descobrir se temos essa informação antes salvá-la no banco de dados para dizemos ordem certa recebida. Então vamos fazer o seguinte. Sabemos que temos essa informação aqui. Então, digamos, por exemplo, ter uma variável e que é o cliente. Estamos recebendo essa informação aqui e colocamos dentro de uma variável no caso de algo não estar certo com isso. Por exemplo, se o cliente e nós vamos usar este ponto de exclamação pouco antes dele. Portanto, isso indicará que se o cliente não é válido ou não contém quaisquer dados. E nós vamos dizer ou, e este é o sinal para este cachimbo. Então temos aqui dois canos. E podemos dizer que, ok, se o cliente for definido, podemos usar aqui uma propriedade chamada length. Queremos que o comprimento seja maior ou igual a dois. Se não for maior ou igual em 2D, então praticamente temos que dizer menor que dois. Então, se o comprimento do nome do cliente é menor que dois, ou se o cliente não existe como uma variável ou seu vazio ou algo assim. E queremos fazer alguma coisa. Então, por exemplo, o que queremos fazer é dizer algo como pedido ou nome do cliente não válido. Então isso vai nos ajudar como tentou entender, também dar esta informação mais adiante, olha, há algo errado com o nome do cliente, não é válido, algo não está funcionando. Além disso, podemos definir um status de resposta e podemos definir o status de resposta para 400. Isso indicará ao cliente que, hey, você fez algo, algo está errado, e nem mesmo certeza se essa chamada provavelmente funcionará. Mas vamos tentar e ver se resolve o nosso problema. Estamos voltando aqui, ainda renomeando o nome do cliente e outra coisa. E estamos recebendo de volta o erro, nome do cliente não é válido. Voltamos a um pedido. Veremos aqui que ainda temos um novo pedido ou algo ainda foi salvo. Então dentro dele para melhorar um pouco o nosso código, porque o que aconteceu é que nós não paramos a execução do resto. Então vamos tentar aqui adicionar um retorno. E isso fará este pedaço de código. E neste ponto, então não vamos adicionar novas entradas para o banco de dados. O envio é novamente, o nome do cliente não é válido. Isso é perfeito. Vamos dar uma olhada aqui para ver se ainda temos um novo pedido e você ordem chegando e nós só teremos o 22. Parece que, neste momento, pelo menos, não está mais aceitando ordens. Agora vamos alterá-lo novamente para cliente porque não queremos afetar outros clientes. Então isso parece estar funcionando ainda. Então você pode ver aqui, nós temos um novo cliente de pão e um novo pedido de pão, desculpe. E também queremos ter certeza de que ele ainda está funcionando corretamente. Então, se tivermos algo como ordem de arco recebida e só temos uma carta que não deveria ser permitida. O nome do cliente não é válido. E você também pode ver aqui que o código de status é agora 400. Deste ponto de vista, conseguimos resolver este problema. Olhando novamente para todos os pedidos que temos, podemos ver aqui que apenas pedidos de clientes válidos estão chegando. Agora, a costura vai com a identificação da pizza. Se mandarmos aqui PTI D dez, diz ordem recebida. Estamos olhando para as ordens terão um pedido para PSI D 10. Mas lembre-se, só temos quatro pizzas no menu, onde fica esse ponto final? Só temos quatro, então não temos uma pizza com identificação dez. Há algo lá que não está certo. Não devemos permitir ordens para coisas assim. Voltando ao código, ainda há algumas coisas que precisamos fazer, mas acho que somos como estudar para entender o que está acontecendo e como as coisas devem funcionar. A ideia seria ter outro bloco aqui e vamos enchê-lo muito em breve. E desta vez vamos economizar em uma variável. Em vez de cliente. Vamos ter aqui Pizza ID. E claro que isso será do corpo, da propriedade que Pete ID. Então o que estamos tentando fazer aqui é procurar em um banco de dados para descobrir se temos isso? Fiz o banco de dados. Claro, poderíamos verificar se é maior do que um e menor do que cinco ou algo nesse intervalo. Mas quando adicionamos mais pizzas ao nosso banco de dados, então também temos que mudar o código. Então isso não é uma boa ideia. Nós sempre verificamos com o banco de dados para ver se essa pizza em particular está disponível. O que podemos fazer neste caso é escrever a seguinte declaração aqui. Então, quando o nosso, se pudermos ir ao banco de dados e dizer hey, banco de dados, estamos trabalhando com pizzas, pizza EUA. E não entenda, não nos dê todas as peças que queremos filtrar. Estamos interessados apenas em um ID de pieta particular. Então estamos dando aqui nossos critérios de filtro, especificando e estamos filtrando por dy. E só queremos que nos dê essa identificação. Além disso, há muito dinheiro para garantir que estamos fechando tudo corretamente. Então, estamos aqui neste momento. Além disso, eu vou dizer aqui valor. Isto irá realmente ler a partir do banco de dados. E isso nos dará uma matriz com todas as pizzas para ter essa idéia, é claro, há matriz deve conter apenas um itens não estavam interessados o que está dentro da matriz e digamos algo como comprimento. Só estamos interessados na propriedade length deste array que está voltando aqui. E o comprimento da matriz deve ser exatamente um. Se não for um. E estamos negando isso, por aqui. Novamente, estamos usando o mesmo código novamente. Então, se estamos consultando o banco de dados de pesquisa de um banco de dados para este ID de pizza e não é exatamente um, então algo não está certo. Então eu vou dizer aqui, Pizza ID não é válida. Vamos voltar de novo. Este é o bloco que validar, primeiro lugar, um cliente. E depois disso vamos PTI d, apenas para ter certeza de que só estamos recebendo pedidos válidos. Dê uma olhada e veja se isso está funcionando. Diz aqui peta ID não válida, não inserimos um PID válido. E se olharmos aqui de novo para a ordem não deve aparecer. Não há nada de novo lá. Então temos que inserir PID válido. Vamos tentar com quatro pedidos recebidos. Neste caso agora, nós realmente temos uma API que está tentando explicar coisas inesperadas que podem acontecer. Está devolvendo o código de seta apropriado. Não se preocupe se este código aqui é apenas um pouco mais complicado que você pode entender que este ponto, que é absolutamente bom. Só queria, eu acho que a idéia de validação para uma API e isso é exatamente o que você está recebendo quando algo não está certo, quando você está usando uma API, você não está fornecendo os dados exatos que API está esperando. Então há um código em algum lugar que diz: “ Ei, você deveria me mandar isso. E se você não me enviou isso, de novo, trabalhe com ele. Isto é o mesmo aqui. Se você não está me dando um nome de cliente, desculpe, eu não posso aceitar o pedido. O ID de pizza fornecido não é válido. Mais uma vez, desculpe, não posso pegar seu pedido. 14. CONCLUSÃO: Então, espero que essa introdução em APIs e como criá-las tenha ajudado você a entender o que uma API realmente é. Como ele se parece do outro lado e permitiu que você obtenha alguma experiência prática. E eu encorajo você a olhar para expandir os exemplos que eu mostrei aqui adicionando outros endpoints, mas tentar fazer outras coisas com os dados disponíveis pode estar abrangendo os endpoints para aceitar mais dados, pode estar adicionando endpoints adicionais, jogando com diferentes métodos de solicitação HTTP. E definitivamente ainda há muitas coisas para aprender.