Domínio da API: entende, crie e rentabilize sua própria API | Programming Made Easy | Skillshare

Velocidade de reprodução


1.0x


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

Domínio da API: entende, crie e rentabilize sua própria API

teacher avatar Programming Made Easy, Software Developer

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.

      Bem-vindo a este curso!

      2:38

    • 2.

      APIs explicadas brevemente (4 níveis de complexidade)

      2:55

    • 3.

      O que é uma API? (Explicação aprofundada)

      4:07

    • 4.

      Melhores APIs + como chamá-las

      8:21

    • 5.

      Melhores práticas de API

      6:58

    • 6.

      Balanceamento de carga de API

      6:29

    • 7.

      Torne sua API amigável

      6:24

    • 8.

      Design RESTful

      7:06

    • 9.

      Versionamento de API

      7:00

    • 10.

      Como configurar um ambiente de codificação

      7:08

    • 11.

      Como codificar nossa própria API

      10:11

    • 12.

      Como implantar nossa API na Web

      6:12

    • 13.

      Como monetizar sua API

      5:16

    • 14.

      Vulnerabilidades comuns de API

      6:04

    • 15.

      Limitação de taxa de API

      6:50

    • 16.

      Como manter sua API segura?

      8:44

    • 17.

      Serviços da Web

      6:54

    • 18.

      Como depurar uma solicitação

      7:39

    • 19.

      Códigos de status HTTP

      11:04

    • 20.

      Métodos de solicitação de HTTP

      15:10

    • 21.

      Parâmetros de consulta de cabeçalhos

      5:59

    • 22.

      Especificação do OpenAPI

      3:51

    • 23.

      Visão geral do SwaggerHub

      12:08

    • 24.

      Informações, servidor e tags

      7:36

    • 25.

      Caminhos e suas operações

      8:30

    • 26.

      Esquemas para modelos de dados

      9:13

    • 27.

      APIs REST

      2:01

    • 28.

      APIs SOAP

      4:48

    • 29.

      SOAP vs. REST

      4:06

    • 30.

      JSON

      3:31

    • 31.

      XML

      5:13

    • 32.

      XML vs. JSON

      4:33

    • 33.

      Como podemos chamar uma API

      4:02

    • 34.

      Chamadas com ondulação

      9:34

    • 35.

      Ligações com o Postman

      7:11

  • --
  • 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.

284

Estudantes

4

Projetos

Sobre este curso

Este curso inclui o BIG PICTURE, com todos os componentes essenciais das APIs que você precisa saber.

Aprenda tudo sobre as APIs: REST e SOAP, Solicitações de HTTP, XML, JSON e Serviços da Web da maneira mais fácil!

As APIs estão crescendo rapidamente em popularidade devido à sua grande importância no espaço web de todos os negócios e, se você está na TI, é essencial ter conhecimento delas, para melhorar suas habilidades técnicas e chances de conseguir um bom emprego.

Se você é iniciante, ou se tem algum conhecimento de APIs, mas precisa solidificar seu conhecimento geral ou sobre um tópico específico, este é o título para você. Vou explicar detalhadamente, começando do zero todos os tópicos que mencionei antes, e sua base de API será mais forte do que nunca depois de terminá-la.

Não é necessária nenhuma experiência de programação, mas os escritores técnicos com experiência de programação que querem saber mais sobre APIs REST ainda a acharão útil.

Este é um ciclo teórico! Nenhuma codificação real estará envolvida!

Os tópicos abordados incluem:

  • O que é uma API
  • Boas práticas de API
  • O que é um serviço da Web
  • Solicitações e respostas HTTP
  • XML
  • JSON
  • Comparação: JSON e XML
  • SABÃO
  • REST
  • Comparação: SOAP e REST
  • Segurança da API
  • OAuth
  • Autenticação e autorização

Obrigado por ler minha introdução! Isto é sobre SEU tempo e aproveite ao máximo! Boa sorte para você e espero vê-lo no curso! Alex!

Conheça seu professor

Teacher Profile Image

Programming Made Easy

Software Developer

Professor

Habilidades relacionadas

Desenvolvimento Desenvolvimento web
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. Bem-vindo a este curso!: Bem-vindo às APIs, ainda mais o básico. O único curso que ele precisa para entender as APIs do zero. Sou Alex, um desenvolvedor sênior de software que prestou consultoria e trabalhou para algumas das maiores empresas de tecnologia, tanto em Londres quanto no Vale do Silício Deixei meu emprego no ano passado para ensinar em tempo integral e mostrar aos outros como ter sucesso nesse setor E desde então, 20.000 programadores fizeram meus cursos. Veja, eu já estive no seu lugar antes. Ainda há muita informação disponível na Internet. Não faça minicursos, tutoriais em vídeo, óculos. Mas quando você está apenas começando, o que você escolhe? Você precisa de um material robusto, muito parecido com o apresentado aqui. E eu não sou o único que está dizendo isso. A maioria das minhas avaliações pode confirmar isso. A maioria dos cursos sobre esse tópico simplesmente não cobre todo o espectro de particularidades tecnológicas para se tornar um mestre em APIs ou mesmo entender o que elas são Agora, neste curso, não usaremos nenhum atalho, mas também não perderemos tempo com informações desatualizadas Tudo gira em torno da eficiência. Se você valoriza seu tempo, tudo aqui está diretamente relacionado ao que você pode fazer como desenvolvedor para começar ou crescer em sua carreira. Você aprenderá habilidades reais que estão em demanda no momento e usadas por algumas das maiores empresas, como Google, Amazon, Facebook ou Netflix. Analisaremos todas as noções da definição de uma API, serviços da Web, formatos de arquivo de dados e segurança de API Agora, ao se inscrever, você terá acesso vitalício a dezenas de vídeos em HD, além de exercícios de codificação e artigos relacionados Eu também atualizo este curso regularmente. Desde o início, o número de aulas dobrou Lembre-se de que ninguém nasce desenvolvedor. Todos nós começamos do zero. Ninguém é bom em nada. No início. Você lutará, cometerá erros, conhecerá cada vídeo. Você aprenderá mais e mais a cada vez, tornando seu cérebro um pouco mais inteligente. E garanto que vou te ajudar a chegar lá. Quem quer que você seja, em qualquer lugar do mundo, você pode se tornar um desenvolvedor de software 2. APIs explicadas brevemente (4 níveis de complexidade): Apesar de ter cursado a universidade em Ciência da Computação, sempre fiquei um pouco confusa com o termo API. Como esse conceito realmente começa a se misturar com a prática de codificação, ele não foi explicado claramente para mim em nenhum lugar Neste vídeo, tentarei explicar essa noção para você em quatro níveis diferentes de complexidade, desde uma criança de cinco anos até alguém que tem uma formação um pouco relacionada à tecnologia, cinco anos. Digamos que você seja um professor que precise fazer uma aula sobre fenômenos climáticos severos, mas estudou apenas furacões mas estudou apenas furacões Você não sabe nada sobre tsunamis. Haveria a opção de estudá-los você mesmo, o que levaria pelo menos um mês. Ou você pode simplesmente ligar para um amigo que sabe tudo sobre eles e ficaria feliz em explicar pessoalmente esse fenômeno em sua aula. 16 anos, você está construindo um projeto de ensino médio muito importante. Para obter a nota máxima, você também precisa ter uma pequena subseção sobre um tópico com o qual não está realmente familiarizado e o prazo é amanhã No último minuto, você lembra que seu irmão mais velho já fez esse projeto e você pode reutilizar a subseção dele do projeto na sua depois que ele concordar com 25 anos Digamos que você esteja codificando um aplicativo do zero. O aplicativo tem como objetivo sistematizar a produtividade de seus usuários implementando a técnica pomodoro em seus Você codifica, mas percebe que seria bom também ter o clima exibido em um canto, caso esteja ensolarado. A pausa de cinco minutos pode ser feita na varanda. Esse seria o caso em que você usaria uma API meteorológica. Ele retornaria o clima atual do seu usuário com base na localização e na hora específica do dia. Alguém que tem cerca de dez conhecimentos relacionados, API significa Application Programming Interface e representa um conjunto de métodos ou funções chamados endpoints que são disponibilizados para serem solicitados Você pode pensar nesses endpoints como funções ou métodos conectados à web E você pode ligar para eles a qualquer momento para obter informações deles, fornecendo os parâmetros corretos. Como você imagina, isso é muito útil por dois motivos. Primeiro, você continua implementando toda a funcionalidade para a qual está chamando a API. Essa abordagem economiza tempo que pode ser gasto no desenvolvimento de outros recursos relacionados ao seu aplicativo. Em segundo lugar, você tem certeza de que o código da API que você está chamando está escrito de forma ideal e levará o mínimo de tempo possível para ser executado, tornando seu aplicativo mais fácil e rápido 3. O que é uma API?: Bem-vindo a esta lição sobre o conceito de programação de uma API. Aqui, veremos o que exatamente é uma API e como ela é útil no contexto atual da Internet, à medida o espaço de codificação se torna ainda mais carente de novos desenvolvedores Ao entender isso, você terá uma vantagem clara diante daqueles que não o fazem, especialmente considerando o quanto isso representa uma peça importante. No esquema geral das coisas, sou um desenvolvedor que escreve código há três anos. Embora eu tenha cursado a Universidade de Ciência da Computação, sempre fiquei intrigada com o termo API Como esse conceito realmente começa a se misturar com a prática de codificação, ele não foi explicado claramente para mim em nenhum lugar Essa é exatamente a razão pela qual senti a necessidade de fazer esta lição simples para você começar. Começando com a abreviatura, API significa Application Programming Interface E representa um conjunto de métodos chamados endpoints que são disponibilizados para serem solicitados Você pode pensar nesses endpoints como funções ou métodos conectados à web e pode chamá-los a qualquer momento para obter informações deles fornecendo os parâmetros corretos APIs foram disponibilizadas para facilitar a comunicação entre os serviços da web. Vamos imaginar que você é um programador que deseja implementar um novo projeto simples do relógio Apomadoro para ajudar os usuários a se concentrarem por 30 minutos seguidos por 30 minutos seguidos por algum motivo em Você também quer que eles saibam o clima atual com base em sua localização. Para fazer isso, você chamaria o endpoint de uma API de clima que terá a aparência get weather e passará como parâmetro a localização do usuário e sua hora atual Agora você pode ver o poder e a vantagem que uma API pode oferecer. Ao usá-los, você pode pular a implementação de partes inteiras de funcionalidades importantes que, de outra forma, levariam algum Dessa forma, se você escolher uma ótima API, também ficará tranquilo sabendo que a implementação é feita sem falhas Existem APIs para segurança, como SMS grátis, autenticação de dois fatores para as APIs do seu aplicativo, que têm enormes bancos de dados sobre diferentes tópicos prontos para serem consultados por você e assim por diante provável que haja uma API sobre o tópico do seu projeto atual que possa ajudá-lo. Você só precisa saber como tirar o máximo proveito disso, e é isso que aprenderemos aqui. Uma ótima API também tem uma ótima documentação. A documentação é composta de explicações para cada endpoint sobre como chamá-lo, o que ele retornará e quais parâmetros você deve passar para tornar isso Há uma abundância de APIs gratuitas na Internet que você pode ligar para começar e ver como elas funcionam. Eles também têm a documentação necessária para facilitar sua viagem. Trechos de código sobre o código exato da chamada são disponibilizados em alguns lugares O que eu mais uso é um site chamado Rapid API. Você pode ir em frente e conferir o hub deles. Agradeço por ficar comigo até o fim e espero vê-lo em futuras palestras 4. Melhores APIs + Como chamá-las: Olá pessoal e bem-vindos a este vídeo que falaremos sobre como você pode acessar algumas APIs públicas com bastante facilidade e chamá-las sem muita dor de cabeça, pois elas têm suas documentação disponibilizada. E para isso, vamos usar a API raivosa, que é uma ferramenta online que eu acho muito útil. Ele tem um hub que tem centenas e milhares de APIs públicas, como eu disse junto com sua documentação. E também maneiras de chamá-los em qualquer idioma em que você possa ter seu aplicativo. Portanto, você não precisa procurar mais do que isso. Além de seu hub, eles também têm um blog e artigos interessantes aqui, como as 50 APIs mais populares. E se dermos uma olhada, eles têm todos os tipos de APIs, desde informações de voo até a API da nasa, o serviço de encurtador de URL, MBA, APIs de música, como genius para obter letras para sua música favorita. Essas são, e coisas do tipo que você precisa fazer é pesquisar a API que você precisa aqui. Você pode ver que pode ativar as APIs públicas e continuar encontrando a que se encaixaria em seu projeto. E você pode simplesmente chamá-lo assim. Você precisa prestar atenção. Porque alguns deles, mesmo sendo públicos, cobram algum dinheiro após uma quantidade de solicitações feitas a eles. Então, por exemplo, aqui temos a receita da API de nutrição para pés e você precisa assinar o teste. E eles podem ver que você tem o básico, que é gratuito, mas será cobrado um valor muito pequeno depois ultrapassar 500 solicitações por dia no endpoint de resultados. Mas, com isso dito, alguns deles são totalmente gratuitos e você não precisa se preocupar com a possibilidade de ser cobrado em algum momento. Por exemplo, vamos pegar a API do Google Translate, que eu sei que o Tp é gratuito, podemos continuar assinando gratuitamente. Como você pode ver, ele não solicitou que eu inserisse os detalhes do meu cartão de crédito. E o bom dessas APIs rápidas é que, além de seus pontos finais, elas também têm a documentação da API disponibilizada para você. Você pode ver que temos três terminais aqui, os idiomas do detector e, para traduzir, cada um deles está documentado aqui. Coisas parecidas com os parâmetros que você precisa inserir para obter uma solicitação bem-sucedida. Se dermos uma olhada no endpoint de detecção, por exemplo, que é post, isso deve detectar o idioma do texto que você está enviando como parâmetro. Na API rápida, você também tem parâmetros de manipulador que precisam ser enviados para que a API saiba quem você é e de onde está ligando. Você pode pensar nisso como, em vez de fornecer nossa API em chave de API, você usará a API X-Ray, a chave da API e o host para eles saibam de onde você está ligando e quem você é basicamente. Mas, além disso, esse método, como eu disse, tem um parâmetro e aparentemente é chamado de fila. E esse é um texto que você pode escrever no idioma de sua escolha. E o que ele retornará é o idioma em que está escrito , se conseguir detectar isso. E como você pode ver, se escrevermos em inglês é difícil, mas detectável, então podemos testar o endpoint. Recebemos o idioma EN, que significa inglês. O trecho de código para isso, ou seja, o código que você precisa escrever para chamar esse ponto final exato dessa API exata, é fornecido por eles e você pode simplesmente copiá-lo. Além disso, você também tem, como mencionado anteriormente, uma grande variedade de idiomas para escolher. Para isso, vamos usar o JavaScript, pois é muito mais fácil e você realmente não precisa instalar nada para chamá-lo. E vamos usar a solicitação XML HTTP. Esse é o código que vamos colocar em um script que está na linguagem JavaScript. E ele vai chamar a API para nós sem problemas. Ele também configura os cabeçalhos da solicitação. Então, ele fornece a chave e o host rápidos da API, e também os dados, ou seja, o parâmetro para o qual chamar o endpoint. E isso é inglês, é difícil, mas detectável. Então, como você pode ver, para realmente chamar esse endpoint de nossa máquina local, vamos para o terminal. E eu já fiz isso. Você pode executar o comando ls para ver quais diretórios você tem no final. Você pode alterar diretórios com CD para qualquer diretório que desejar, esta pasta deste projeto para bean. Eu fiz isso no desktop e então você pode usar o MKDIR para criar uma pasta e depois escrever seu nome, chamadas de API de ID. E depois de alterar diretórios nessa pasta do curso da API, você pode tocar em um índice que é HTML e script.js. Você pode criar isso com os comandos D, O, C, H e, em seguida, o nome do arquivo. Então, index.HTML. Eu já fiz isso. Indo ainda mais longe. Eu os abro com o Visual Studio Code. E, como você pode ver, eu tenho um trecho básico de um documento HTML. Eles são todos locais, então não vamos implantá-los. Isso é muito simples e adequado para iniciantes. Oh, eu fiz. Aqui estava eu referenciando o script.js e deixei o restante do corpo vazio. Se formos para o script.js, eu simplesmente copiei o conteúdo da chamada de API fornecida pela API rápida. Na verdade, essa é outra chamada de API, mas vamos atualizá-la com esta. E quando você abre o arquivo index.html em seu navegador, você pode ver que podemos recarregar isso. E se pressionarmos o botão para abrir o console, você pode ver que temos a resposta dada pelo endpoint. Na linha oito. Temos o registro do console, que significa que ele está conectado à conta. Então, a resposta do endpoint, que é semelhante à que tivemos aqui, se a chamarmos, você pode ver que tinha o idioma en para inglês. E aqui, isso é o que obtemos também. Ele também fornece variáveis confiáveis e de confiança para melhor avaliar sua confiança e confiabilidade no fato de que esse é o idioma do texto que você forneceu como parâmetro. Portanto, há uma grande variedade nesses centros, além do Google Translate, você pode verificar os dados do voo e obter dados de tomografia computadorizada. Você pode obter SMS grátis em seu número de telefone para fazer a autenticação e a aplicação. Então, isso pode ser muito útil se você estiver implementando a parte de segurança do seu projeto. E você não quer ter nenhuma dor de cabeça implementando um pouco mais ou quer uma maneira rápida disponibilizar a autenticação de dois fatores para você. Além disso, você também pode criar uma conta com a API rápida e verificá-la se quiser dar uma olhada no outro ponto final. Mas, além disso, agradeço muito por ficar comigo até o final deste vídeo. Se você gostou ou tem alguma outra ideia sobre vídeos sobre APIs, fique à vontade para deixá-las nos comentários e até a próxima vez, tenha uma boa. 5. Melhores práticas de API: Olá pessoal e bem-vindos de volta a este curso de API. Nesta palestra, vamos dar uma olhada nas melhores práticas de API para garantir que as APIs sejam eficazes, eficientes e sustentáveis Aderir a essas melhores práticas é muito importante. Nesta lição, vamos nos aprofundar nessas melhores práticas para projetar e implementar APIs Agora, um dos princípios fundamentais do design da API é a consistência. Os métodos e respostas dos endpoints da API devem seguir as convenções e padrões de nomenclatura estabelecidos. Essa consistência simplifica o desenvolvimento e o consumo de APIs, e aqui você pode usar nomes descritivos e significativos Isso significa que os endpoints e métodos da API devem ter nomes claros que reflitam sua finalidade Evite nomes enigmáticos ou ambíguos que exijam que os usuários consultem uma documentação extensa Você também deve seguir os princípios do Restful. transferência de estado representacional é um estilo arquitetônico amplamente adotado para projetar aplicativos de rede A adesão aos princípios RESTful ajuda a manter uma estrutura padronizada para endpoints e recursos de API Você também deve incluir o controle de versão no RL da API para garantir que as alterações na API não prejudiquem os Por exemplo, use V um recurso e V dois recursos para diferenciar as versões da API Outro aspecto crítico do design da API é o tratamento eficaz de erros. As respostas de erro adequadas ajudam os clientes a entender e resolver problemas com eficiência. Você deve usar códigos de status HTTP apropriados. Eles fornecem informações valiosas sobre o resultado de uma solicitação. Use códigos como 200 para K, 201 para criada, 400 para solicitação inválida e 44 para não encontrada com precisão para transmitir o resultado da solicitação Além do status, os códigos incluem mensagens de erro descritivas no corpo da resposta Essas mensagens devem explicar o que deu errado e, se possível, oferecer mais orientações para a resolução. A segurança é outro aspecto fundamental do design da API. Prever dados confidenciais e garantir uma comunicação segura é crucial Sempre use HTTPS para criptografar dados em trânsito, evitando espionagem e adulteração de Além disso, implemente mecanismos de autenticação robustos para verificar a identidade dos clientes e empregue a autorização para controlar o acesso a recursos específicos As opções incluem chaves de API 00 e JWTs para evitar abusos ou sobrecarga de Implemente a limitação de taxa para restringir o número de solicitações que os clientes podem fazer dentro de um prazo definido Uma documentação clara e abrangente é essencial para desenvolvedores que consomem sua API. Ele deve servir como um guia de referência, permitindo que eles entendam como usar a API de forma eficaz, incluindo informações detalhadas sobre endpoints disponíveis, métodos de solicitação, parâmetros, formatos de resposta e códigos de erro Você também pode fornecer exemplos reais de solicitações e respostas de API para ilustrar como interagir com a API com sucesso Em seguida, processos completos de teste e garantia de qualidade garantem que sua API funcione de forma correta e confiável Para que os testes unitários de gravação em todos os seus endpoints de API validem se eles funcionam conforme o esperado, retornem dados precisos e lidem com erros normalmente Além disso, realize testes de integração para verificar se a API funciona perfeitamente com outros componentes e serviços com os quais ela interage Quando se trata de controle de versão e compatibilidade com versões anteriores, lembre-se de que as APIs evoluem com o tempo, assim como a maioria das tecnologias atualmente Mas é essencial manter essa compatibilidade com versões anteriores para evitar a quebra de clientes existentes que já estão usando a API UR para isso Novamente, o controle de versão da API entra em ação. Implemente estratégias de controle de versão para introduzir alterações na API sem afetar os clientes existentes Isso pode ser feito, como acabamos de mencionar, por meio de versionamento de URL ou Em seguida, comunique claramente os planos de suspensão de uso e encerramento para versões mais antigas Informe os usuários sobre quando e como eles devem migrar para versões mais recentes Otimizar o desempenho da API é vital, além de afetar os tempos de resposta e a escalabilidade Para isso, você deve ter em mente o tamanho da resposta. Minimize-o excluindo dados desnecessários. Use a paginação para listas longas de itens e forneça opções de filtragem Outra coisa a ter em mente é implementar mecanismos de cache para reduzir a carga no servidor e melhorar os tempos de resposta Utilize riscos de cache HTTP, como controle de tags e cache. monitoramento e a análise contínuos fornecem informações sobre o desempenho do uso da API e talvez possíveis problemas. Portanto, você deve acompanhar as principais métricas, como taxa de solicitações, taxas de erro e tempos de resposta. Para isso, você pode usar ferramentas como o Google Analytics ou soluções personalizadas para obter informações sobre como sua API está sendo usada. Configure sistemas de alerta para notificá-lo sobre problemas de desempenho, interrupções ou comportamento incomum As melhores práticas para APIs são essenciais para criar sistemas confiáveis, seguros e de fácil manutenção seguindo as diretrizes sobre as quais acabamos de falar Desenvolvedores como você podem projetar e implementar APIs consistentes, seguras e eficientes, além fornecer documentação clara para seus usuários. Uma API bem projetada e bem documentada não apenas aprimora a experiência do desenvolvedor, mas também contribui para o sucesso dos sistemas e aplicativos que dependem dela Com tudo isso dito, agradeço muito a vocês por permanecerem comigo até o final desta palestra, e espero ver vocês na próxima 6. Balanceamento de carga de API: Olá pessoal, e bem-vindos de volta a este curso da ABI. Nesta palestra, falaremos sobre dois componentes críticos da infraestrutura de APIs Eles estão escalando e balanceando a carga. Eu sugiro fortemente que você implemente esses dois conceitos em seu próprio desenvolvimento futuro de API. Mas antes de tudo, vamos falar sobre o que eles realmente são quando se trata de escalonamento de API Esse é o processo de expansão da capacidade de uma infraestrutura de API para acomodar o aumento do tráfego, demanda do usuário e dos requisitos de processamento de dados. O objetivo é manter desempenho contínuo mesmo com o aumento da carga da API. O dimensionamento pode ocorrer tanto na vertical quanto na horizontal. Verticalmente significa adicionar mais recursos a um único servidor e horizontalmente significa adicionar O balanceamento de carga, por outro lado, complementa os esforços de escalabilidade distribuindo uniformemente as solicitações recebidas em vários complementa os esforços de escalabilidade distribuindo uniformemente as solicitações recebidas em vários servidores ou recursos. Ele garante que nenhum servidor fique sobrecarregado enquanto otimiza a utilização dos recursos balanceadores de carga atuam como gerenciadores de tráfego, direcionando de forma inteligente as solicitações recebidas para o servidor mais adequado com base em vários critérios Você pode estar se perguntando agora por que o dimensionamento e o balanceamento de carga Em primeiro lugar, eles garantem que as APIs permaneçam disponíveis mesmo que, em face de alto tráfego ou falhas no servidor, redundância minimize tráfego distribuído uniformemente significa que cada servidor opera com uma capacidade ideal. Maximizando os tempos de resposta e reduzindo a latência. A capacidade de escalar horizontalmente permite que as organizações aumentem sua infraestrutura de API em resposta ao aumento da demanda forma eficaz e preparada para o futuro, os balanceadores de carga de serviços podem detectar e redirecionar tráfego para fora de servidores não íntegros, garantindo um serviço ininterrupto no caso de uma falha Existem algumas estratégias para escalar e balancear a carga Em primeiro lugar, temos a escala vertical. Isso implica adicionar mais recursos, sejam eles CPU, memória ou armazenamento, a um único servidor. Essa abordagem é adequada para aplicativos com tráfego moderado e pode ser econômica. Em seguida, temos o dimensionamento horizontal, adicionando mais servidores para lidar com o tráfego É uma abordagem escalável, mas requer coordenação cuidadosa e também balanceamento de carga Existem algoritmos de carregadores de carga. Os balanceadores de carga usam algoritmos como conexões Robin Hood List ou IP has para distribuir as solicitações recebidas do servidor compreensão desses algoritmos ajuda a otimizar o balanceamento de carga Alguns aplicativos exigem sessões fixas, nas quais as solicitações dos usuários são direcionadas ao mesmo servidor para manter o estado da sessão Os balanceadores de carga podem ser configurados para a persistência da sessão quando necessário As melhores práticas quando se trata escalabilidade e balanceamento de carga são as seguintes Você deve implementar redundância em todos os níveis, incluindo balanceadores de carga e servidores, para garantir a alta disponibilidade Você também deve monitorar continuamente integridade do servidor e os padrões de tráfego para detectar e resolver problemas. Implemente proativamente mecanismos de escalabilidade automática que podem ajustar dinamicamente os recursos com base em métricas tráfego e desempenho em tempo real Garanta que medidas de segurança , como firewalls e proteção Dos, sejam integradas à configuração escalonamento e balanceamento de carga Por fim, teste rigorosamente a configuração de escalabilidade e balanceamento de carga sob várias condições, incluindo Além disso, aqui, não se esquive de pensar nos casos extremos Isso é, na maioria das vezes, o que acaba arruinando o caminho feliz que implementamos ou determinada Com tudo isso dito, acho que o escalonamento da API e o balanceamento de carga são componentes integrais da criação de serviços confiáveis e de desempenho na era digital Compreendendo os princípios, as estratégias e as melhores práticas associadas às organizações escalabilidade e balanceamento de carga E você pode criar infraestruturas de API que aumentem continuamente o tráfego, garantam alta disponibilidade e ofereçam o desempenho que os usuários da API esperam Eu realmente espero que vocês aprendam algo com esta palestra e pensem no futuro ao desenvolver sua própria API sobre escalabilidade e balanceamento de carga Agradeço muito por ficar comigo até o final desta palestra Estou ansioso para ver você na próxima. 7. Torne sua API amigável ao usuário: Olá pessoal e bem-vindos de volta a este curso de API. Nesta palestra, falaremos sobre o design APIs fáceis de usar porque, na minha opinião, o verdadeiro valor de uma API vai além da funcionalidade, está na facilidade de uso Nesta lição, exploraremos a arte de criar APIs fáceis de usar, enfatizando por que isso é importante e como alcançá-las de forma eficaz A facilidade de uso nas APIs não é um mero luxo. É uma necessidade. E aqui está o porquê. Uma API fácil de usar é mais fácil para os desenvolvedores entenderem e usarem, reduzindo o tempo e o esforço necessários para integrá-la aos aplicativos. APIs bem projetadas têm menos probabilidade de causar confusão ou erros, reduzindo a necessidade amplo suporte e solução de problemas. É mais provável que os desenvolvedores escolham e defendam APIs intuitivas e fáceis de trabalhar, levando a uma maior adoção e uso É mais provável que APIs fáceis de usar sejam mantidas e atualizadas, garantindo sua viabilidade a longo prazo em um cenário tecnológico em rápida evolução como o que temos hoje No que diz respeito aos princípios de design para APIs fáceis de usar, temos consistência. Você deve manter um padrão de design consistente em toda a sua API. Isso inclui convenções de nomenclatura, estruturas de resposta de solicitações e tratamento de erros Use nomes claros e concisos para recursos, endpoints e parâmetros Evite ambigüidade e complexidade excessiva. Torne o comportamento da API previsível. Os desenvolvedores devem ser capazes de prever como a API responderá às suas solicitações Certifique-se de que a API seja autoexplicativa. Use nomes significativos e forneça documentação detalhada, incluindo exemplos de uso. Implemente o controle de versão para permitir atualizações e melhorias mantendo a compatibilidade com versões anteriores para A documentação é uma loja de esquina. Aqui, uma documentação abrangente é fundamental. Documente minuciosamente sua API, incluindo endpoints, estruturas de resposta de solicitações, métodos de autenticação e códigos de erro Forneça exemplos e casos de uso claros. Você pode ir para a seção onde eu explico como você pode documentar sua API usando especificação de API aberta Swagger Hub neste mesmo curso Em seguida, considere fornecer documentação interativa usando ferramentas como Swagger ou Open EPI Permitindo que os desenvolvedores testem os endpoints da API diretamente da documentação Mantenha um bloqueio de alterações para informar os usuários sobre atualizações, correções de erros e novos recursos. Isso gera confiança e ajuda os desenvolvedores a se adaptarem às mudanças com muito mais rapidez Além disso, aumenta a conscientização sobre eles. Também temos aqui um tratamento consistente de erros. Use códigos de status HTTP padrão para erros, 44 para não encontrado, 400 para solicitação incorreta 200 para uma boa resposta E a solicitação inclua uma mensagem de erro descritiva no corpo da resposta. Qualquer que seja o código de status recebido pelo cliente. Forneça detalhes adicionais do erro, incluindo uma descrição legível por humanos e potencialmente, um link para a documentação relevante Se a limitação ou limitação de taxa estiver em vigor em sua API , ela deveria ser, como falamos em outra palestra, comunicada claramente na documentação comunicada claramente No que diz respeito à autenticação e autorização, você deve ter uma autenticação clara, especificar os métodos de autenticação clareza. Se possível, implemente mecanismos de autorização granulares para permitir que os desenvolvedores controlem o acesso em um nível refinado ciclos de teste e feedback de Leslie são essenciais, novamente, ao desenvolver uma ABI fácil de Teste rigorosamente sua API para garantir que ela se comporte conforme o esperado em E não hesite em pensar nos casos H. Busque ativamente o feedback dos desenvolvedores que usam sua API e use a opinião deles para fazer melhorias. Projetar APIs fáceis de usar é uma arte que combina proficiência técnica com empatia pelos desenvolvedores que as usarão Uma API fácil de usar reduz atrito no processo de integração, promove a satisfação do desenvolvedor e contribui para o sucesso do provedor de API e de seus É exatamente por isso que escolhi falar sobre isso aqui em uma palestra separada Espero que vocês implementem algumas das estratégias discutidas aqui em seu próprio desenvolvimento de API. Agradeço muito por ficar comigo até o final desta palestra e espero vê-lo na próxima 8. Design RESTful: Olá pessoal, e bem-vindos de volta ao discurso sobre APIs. Nesta palestra, examinaremos mais de perto os princípios de design RESTful quando se trata de design geral de API Esses princípios de design repousantes surgiram como uma filosofia orientadora. Estamos criando sistemas elegantes, escaláveis e de fácil manutenção Rest, que significa Representational State Transfer, é um estilo arquitetônico que enfatiza simplicidade, clareza e comunicação baseada em recursos Nesta lição, exploraremos os princípios fundamentais do design RESTful e por que eles são essenciais no desenvolvimento de software moderno Quando se trata de entender o design RESTful, é crucial saber que ele está centrado em vários princípios fundamentais que facilitam a criação de serviços web fáceis de entender, flexíveis e Em primeiro lugar, temos apatridia. Os serviços RESTful não têm estado, ou seja, cada solicitação de um cliente para um servidor deve conter todas as informações necessárias para entender e atender a essa Esse princípio simplifica a implementação do servidor e também melhora drasticamente a escalabilidade Além disso, tudo é um recurso, que pode ser um objeto físico, uma entidade conceitual ou um item de dados Os recursos são identificados por identificadores uniformes de recursos ou como você deve ter ouvido, R, sim Eles podem ser manipulados. Os métodos HTTP padrão incluem post, put, patch, delete e assim por diante. Os recursos podem ter várias representações como XML, Jason ou HTML Os clientes interagem com essas representações e não diretamente com o recurso em si. Essa flexibilidade permite a dissociação entre clientes e servidores A comunicação em si é apátrida. Clientes e servidores se comunicam por meio solicitações e respostas sem estado Cada solicitação deve ser independente e o servidor não deve reter nenhuma informação sobre o estado do cliente entre as solicitações. Tudo, desde o token do portador da autenticação do cliente até a resposta fornecida pelo servidor, ocorrerá nessa solicitação Uma interface uniforme e consistente é um princípio fundamental. Isso inclui o uso de métodos HTTP padrão, mensagens autodescritas e hipermídia como mecanismo do estado do aplicativo Isso permite que os clientes naveguem pelos recursos do aplicativo seguindo os links nas respostas. Falaremos sobre por que o design repousante é importante. APIs RESTful são inerentemente escaláveis porque não têm estado e são orientadas Isso facilita a distribuição e o balanceamento de cargas das solicitações. Princípios de design simples facilitam que desenvolvedores entendam e usem as APIs Essa simplicidade reduz a curva de aprendizado para novos desenvolvedores. O uso de várias representações e a dissociação de clientes e servidores fornecem flexibilidade para a evolução APIs sem prejudicar os clientes existentes. APIs RESTful usam métodos e formatos HTTP padrão, promovendo a interoperabilidade entre diferentes Os recursos e suas representações podem ser versionados e atualizados de forma independente, o que simplifica a manutenção e reduz o risco de introduzir alterações significativas As melhores práticas para um design repousante são as seguintes. Em primeiro lugar, você deve usar substantivos para nomes de recursos. Escolha substantivos significativos e pluralizados para nomes de recursos. Escolha substantivos significativos e pluralizados para nomes de recursos. Por exemplo, usuários para uma coleção de recursos do usuário. Use métodos HTTP de forma adequada. Obtenha recursos de recuperação, publique para criar novos recursos, coloque para atualizar recursos e exclua para remover recursos Siga essas convenções para manter uma interface uniforme, fornecer documentação clara e documentar minuciosamente sua API, incluindo URI de recursos, métodos HTTP disponíveis e a estrutura das representações de recursos Temos uma seção inteira neste curso que ajudará você a entender como você pode documentar sua API na prática usando a especificação Open API. Swagger Hub, você pode conferir isso. Em seguida, temos o controle de versão. Se forem necessárias alterações, crie versão da sua API para garantir a compatibilidade com versões anteriores dos clientes existentes Novamente, temos uma palestra sobre isso. Use códigos de status HTTP apropriados para transmitir o resultado de uma solicitação 200 em caso de sucesso, 44 em caso de não encontrado e 400 em caso de solicitação incorreta. Com tudo isso dito, acho que os princípios de design do Restful oferecem uma estrutura robusta para criação de serviços web e APIs eficientes, fáceis de manter e adaptáveis Ao aderir a esses princípios, os desenvolvedores podem criar sistemas que não apenas atendam às necessidades dos usuários atuais, mas também forneçam uma base sólida para o crescimento futuro e a evolução das APIs Muito obrigado por ficarem comigo até o final desta palestra Eu realmente espero que você implemente alguns dos princípios de design RESTful sobre os quais falamos hoje em suas APIs Estou ansioso para ver você na próxima palestra. 9. Versionamento de API: Olá pessoal, bem-vindos de volta ao Discourse on APIs. Nesta palestra, vamos dar uma olhada no controle de versões da API Veremos por que o controle de versão é importante em primeiro lugar. Em seguida, entenderemos quais são as estratégias para versão da API e as melhores práticas quando se trata de controle de começar com o que realmente é, versões de APIs é a prática de gerenciar alterações nas APIs de uma forma que garanta a compatibilidade com versões anteriores e, ao mesmo tempo permita as atualizações e melhorias necessárias Ele serve como uma ponte entre o antigo e o novo, garantindo que as integrações e os clientes existentes continuem funcionando sem problemas, ao mesmo tempo em que acomoda as necessidades em evolução dos Passando para a razão pela qual o controle de versões é importante. Embora os clientes existentes dependam do comportamento da API, mudanças abruptas podem interromper esses clientes e interromper os serviços que dependem É aqui que entra o controle de versões. Ele ajuda a manter a estabilidade ao isolar as mudanças das implementações existentes Além disso, as APIs precisam se adaptar e melhorar com o tempo para atender às mudanças nos requisitos e também aos avanços tecnológicos controle de versão, novamente, permite que os desenvolvedores introduzam novos recursos, corrijam bugs e otimizem o desempenho sem afetar os usuários existentes que já estão usando API específica. O controle de versão fornece uma maneira clara e padronizada aos Ele incentiva a documentação abrangente e a transparência na evolução da API Falando sobre estratégias para controle de versão de API, existem algumas começando com a mais usada, que é o controle de versão de URL Essa estratégia envolve incluir o número da versão da API na URL. Por exemplo, você pode ter o domínio da sua API e, em seguida, colocar um V e o número da versão em que você está. Continuando com o recurso no qual você está tentando fazer uma operação de CRD É simples e fácil de entender, mas pode gerar URLs confusos à medida que É exatamente por isso que existem mais estratégias para o controle de versões da API O segundo é o controle de versão do cabeçalho. Aqui, a versão é especificada em um cabeçalho HTTP em vez de um URL. Você pode pensar nesse cabeçalho como aceitar a versão negativa. E então você pode especificar a versão real, que pode ser V e seguida, o número da versão em que você está. Essa abordagem mantém os URLs mais limpos, mas pode exigir um esforço adicional dos clientes que estão tentando chamar sua API para analisar o cabeçalho corretamente Eles podem até esquecer de colocá-lo lá, pois o controle de versão do URL é simples e vem diretamente do URL que você está Ele tem uma taxa de erros muito menor. Também há controle de versão do tipo de mídia. Essa abordagem incorpora a versão no tipo de mídia, como aplicativos, por exemplo, VND, depois a versão mais Json Isso fornece uma maneira clara de especificar a versão nas solicitações e respostas, mas pode ser mais complexo de implementar, pois os arquivos reais precisam ter a versão em seus nomes. Leslie, há versionamento semântico. Usar o controle de versão semântico é comum em bibliotecas de código aberto e pode ser aplicado às APIs Ele oferece informações detalhadas sobre a versão , facilitando a compreensão da natureza das alterações. Vamos dar uma olhada agora nas melhores práticas quando se trata de controle de versão de API E a primeira é implementá-la desde o início do desenvolvimento da API. Basta planejar o controle de versão desde o início. Isso evita desafios ao introduzir versão em uma API existente, o que é muito mais difícil Será mais fácil se você tiver isso o tempo todo. Se possível, adapte o controle de versão semântico para ter clareza sobre o tipo de alterações em cada Essas mudanças podem ser maiores, menores ou apenas um simples patch, sempre que possível. Além disso, mantenha a compatibilidade com versões anteriores, desative os recursos e dê aos desenvolvedores período de carência para Além disso, se você mantiver essa compatibilidade com versões anteriores, será muito mais fácil para eles se integrarem à sua versão mais recente da API Próximo documento, estratégias de controle de versão e mudanças. Forneça detalhadamente guias de migração para desenvolvedores que estão fazendo a transição para novas versões Considere oferecer suporte de longo prazo para APIs críticas, garantindo estabilidade para clientes com ciclos de vida estendidos. Teste rigorosamente cada versão para detectar regressões e garantir Monitore o uso da API para identificar as necessidades de suspensão de uso. Isso seria tudo quando se trata de versionar sua própria API. Eu realmente espero que vocês tenham entendido algo dessa palestra. Se você tiver alguma dúvida, não hesite em entrar em contato comigo. Muito obrigado por ficar comigo até o final, e estou ansioso para ver você na próxima 10. Configurando um ambiente de codificação: Olá pessoal, bem-vindos de volta a este curso sobre APIs. Nesta seção, veremos como podemos criar uma API do zero e também colocá-la à venda no site Rapid API, sobre o qual eu já falei neste curso. Em primeiro lugar, vincularei na pasta de recursos deste curso, o repositório Github, com o código que apresentarei a Você pode cloná-lo em sua máquina local e alterá-lo como quiser Como você pode ver na tela, esse é o repositório real Isso facilitará a configuração de uma nova API e a publicação dela para venda. O método de implantação de uma API pública apresentado aqui será muito rápido e direto Além disso, será totalmente gratuito. Ao final desta seção, você terá uma URL de variável on-line para a qual poderá fazer solicitações usando essa Você publicará sua primeira API no repid pi.com e eu também, como disse, mostrarei como você pode monetizá-la Como você pode ver aqui, a API é implantada ao vivo nesse URL E se clicarmos nesse link, ele é realmente nosso. Você pode ver que temos aqui a URL. E também precisa de um parâmetro. Isso nos dá os dividendos dos últimos dez anos de um determinado símbolo de ações que tenho aqui como renda real Mas você também pode escolher a Apple, digamos que, no momento, ela esteja, na verdade, obtendo os dados dos dividendos que Apple concedeu nos últimos dez anos Como você pode ver, temos a taxa de dividendos, o valor, a data da declaração, a data de registro e a data do pagamento Usaremos uma técnica chamada web scraping aqui para obter as informações reais que nossa API exporá diretamente da Internet sem armazená-las em nenhum Para uma configuração rápida do servidor, usaremos o Express Framework. Toda essa funcionalidade caberá no arquivo Javascript. Como você pode ver, é o arquivo JS de dividendos que apresentarei a você com mais detalhes em futuras palestras Depois de obtermos as informações que precisamos que nossa API exponha da Internet, precisaremos analisá-las apenas nos campos necessários para agilizar esse processo Usaremos a estrutura Cheerio. Esta é, como você pode ver, biblioteca para analisar e manipular HTML e XML Obviamente, vamos usá-lo para HTML. É muito rápido e tem uma sintaxe muito intuitiva e fácil de usar Agora, uma vez que tenhamos a API construída localmente e a recuperação de informações do site na Internet funcione em nosso endpoint local Precisamos implantá-lo publicamente na web para que possamos ter um link próprio para uma API rápida. Como você viu, eu tenho aqui o aplicativo de dividendos Netlify. Para fazer isso, encontrei um site de hospedagem gratuita chamado Netlify e vamos nos integrar a Isso é muito parecido com o Roku, mas eu tentei o Roku e ele não oferece mais um plano gratuito Infelizmente, o Netlify tem. Essa é uma opção muito boa para implantar nosso site e tudo isso gratuitamente. Se você consultar os preços, verá que o plano inicial é gratuito e você tem 100 gigabytes de largura de banda e Os minutos de construção referem-se a quando seu site está sendo construído antes de ser implantado 100 gigabytes de largura de banda se referem à quantidade de dados que outros usuários consomem ao assistir 100 gigabytes de largura de banda são suficientes, especialmente se você está apenas começando E descobri que esse é o meu caso, especialmente para o propósito do que estamos fazendo aqui. Na verdade, você pode fazer algumas vendas na API Rapid, com certeza, antes de esgotar esses 100 gigabytes A funcionalidade específica da API que criaremos aqui será recuperar, como você viu, as informações de dividendos, como data e valor dos últimos dez anos, para o símbolo de ações que fornecemos a ela como parâmetro Agora, o site que eu decidi criar se chama Street É esse site aqui que parece bem antigo, mas tem uma estrutura bem simples. Portanto, será fácil direcionar as informações de que precisamos das linhas de suas tabelas usando a estrutura Cheerio Na verdade, esse é o motivo pelo qual não precisamos de um banco de dados nos bastidores. E não precisamos armazenar todos os dados de dividendos de todos os símbolos de ações em que pudéssemos imaginar Agora, se fizermos uma função F 12 sobre isso e navegarmos no Des. Quando chegamos às linhas que contêm os dividendos reais, você pode ver que ela tem uma tabela com uma classe chamada dividendos Este tem um corpo e as linhas da tabela, como você pode ver à esquerda, contêm as informações reais dos dividendos Depois de abrirmos uma linha da tabela, você pode ver as informações que podemos seguir em frente e coletar Usaremos o Chi para detectar os identificadores de dados da tabela neste documento HTML É muito útil porque não é tão complicado e, na verdade, essas são as únicas linhas da tabela que o site tem Mas com isso dito, explicarei todo o código que temos aqui e como implantá-lo também no Netlify e, em seguida, como realmente implantar essa API que desenvolvemos na API rápida Você pode vê-lo implantado aqui e também tem um plano pago. Se os usuários quiserem fazer mais solicitações, então um limite básico que você configurará. Se você está ansioso para aprender sobre esse tópico, espero vê-lo na próxima palestra Obrigado por ficar comigo até o final desta. 11. Codificando nossa própria API: Olá pessoal e bem-vindos de volta a este curso de API. Nesta palestra, examinaremos mais de perto o script que mostrei na introdução desta seção sobre como vender uma API E vamos entender o que ele faz exatamente para que você possa replicá-lo com uma URL diferente Coletando algumas informações diferentes da web e criando sua própria API para implantá-la ao vivo na Além disso, publique-o no Rapid API.com e faça algumas vendas com ele também A primeira coisa que você precisa fazer para executar esse código será instalar o Nog em sua máquina local Você pode acessar o site do No Jtg e, na página de downloads, poderá selecionar seu sistema operacional Eu tenho Mac aqui, plataforma Windows ou Linux. Você pode escolher opções diferentes e, depois de pressionar isso, o executável começará a ser baixado em sua máquina local E você prosseguirá a partir daí e o instalará com um assistente de configuração bem simples. Depois de instalar o node em sua máquina local, você pode prosseguir e clonar nosso repositório A partir deste link, você pode acessar esta URL do Github, que eu também vincularei na pasta de recursos deste curso Clique nesse botão de código, copie esse URL e vá em frente no seu terminal. Se você instalou e executou o git clone e, em seguida, esse URL, ele clonará todo o repositório Depois, você pode abri-lo em um editor. Eu tenho aqui o código do Visual Studio para executar esse repositório e vê-lo de uma forma mais bonita Depois de baixá-lo, clone-o em sua máquina local Você não terá a pasta de módulos do nó e eu explicarei o porquê em apenas um segundo Mas além disso, você terá todos os arquivos. O arquivo gitignore é usado para ignorar alguns dos arquivos que você tem dentro da pasta e não Por que isso é útil porque uma vez que você tenha uma pasta de módulos de nó, não precisará realmente confirmá-la. Especificamos que no git ignore para esse código seja executado, você executará o NPM primeiro no pacote em que o Json será criado e no bloqueio do pacote J também será criado Aqui, todos os pacotes necessários para este projeto serão especificados. Então você pode ver aqui que também estamos usando o Express e o Axis Cheerio, que são todos pacotes que você ainda não instalou Para isso, você pode executar NPM install e depois o nome de cada um deles, mas também pode simplesmente executar o NPM Isso criará a pasta de módulos do nó com todos os pacotes que você precisará. Você pode ver que, por padrão, ele instalará todos os outros pacotes como o Express e assim por diante. Não, quando chegar a esse ponto, você poderá executar o NPM Start para que esse aplicativo funcione localmente Mas o que estamos tentando fazer aqui é dar um passo em frente e torná-lo vivo. Implante-o na web real, para que você possa chamá-lo de lá. Dito isso, vamos dar uma olhada no código real. Você pode ver que temos funções de código de pasta, que é para o aplicativo Netlify, onde implantaremos nosso Você pode ver aqui que precisamos especificar a compilação e, na pasta de funções, é o script que queremos implantar. O Netlify ML é outro arquivo essencial para você, e você precisará dele para implantá-lo no Você pode ver que aqui temos a constante do roteador declarada, que é o roteador expresso. E isso criará um servidor que tenha rotas. Você pode criar mais de uma rota com ele. Você pode ver que temos uma rota padrão em nosso site implantado Você pode ver que essa é a rota padrão e diz apenas bem-vindo à API de dividendos de ações, como você pode ver aqui Mas também tem uma rota que usa um símbolo. Se você se lembra da última palestra, eu lhe dei um símbolo e ele recuperou informações de dividendos desse símbolo de Se o usuário inserir o caminho do símbolo, primeiro ele pegará o parâmetro do símbolo da solicitação e o colocará em uma constante chamada símbolo. O URL, como eu já disse vocês, é do site que será copiado É para isso que faremos uma solicitação para recuperar as informações A URL trata do histórico de dividendos da insider.com slash. E então o primeiro parâmetro de consulta é especificado pelo ponto de interrogação e Q e, em seguida, igual. Você pode ver se vamos até aqui, esse é o URL exato. Aqui está o símbolo da ação da qual você deseja recuperar o dividendo Recebemos isso como um parâmetro e, em seguida, usamos axis para fazer uma solicitação gat para esse URL E o caminho real é o URL mais o símbolo. Isso recuperará o HTML real desta página. Quando obtemos isso, obtemos todo esse documento HTML, depois o temos aqui na resposta, esses dados, os atribuímos a uma variável HTML. E então usamos o Chi, a estrutura sobre a qual falei que pode facilmente escolher os elementos HTML e as informações dentro dela para carregá-los, e os colocamos na variável do cifrão. Essa variável de cifrão é a cereja da sintaxe Vamos procurar os dados da tabela. Como eu disse novamente na palestra anterior, é aqui que os dividendos estão sendo armazenados nesta tabela que você vê Existem algumas linhas da tabela, elementos que armazenam essas informações que precisamos analisar para cada dado da tabela Vamos tirar o texto dele e depois colocá-lo em uma matriz que contém dados de dividendos, e eu o declarei aqui, e está vazio Em seguida, analisaremos essa matriz de dados de dividendos. E vamos criar um objeto chamado dividendo com todas essas propriedades de string E vamos armazenar e emitir os dados reais de dividendos que não serão recuperados, como você Por exemplo, se eu der ao símbolo da ação diretamente as datas dos dividendos Nesse formato, ele precisará ser analisado um pouco mais porque também conterá outras coisas Mas eu criei esse código específico para obter apenas a data real. Em seguida, vou empurrar esse objeto de dividendo para outra matriz vazia declarada No final, o resultado será essa matriz com todos os dados analisados no formato Json É isso que a rota da bola retornará para nós. Você também precisará usar este aplicativo aqui, ou seja, o aplicativo expresso, para tornar o Netlify amigável Para poder implantar todo esse aplicativo no Netlify como primeiro parâmetro Isso levará o nome da função que você tem e o nome da função da pasta e o Netlify. Antes disso, também será necessário um roteador O roteador é o roteador expresso. Além disso, o módulo exporta. manipulador deve ser especificado para ser sem servidor para este aplicativo aqui Depois de clonar esse código exato, o que eu sugiro que você faça, torne-o implantável no Implante-o lá e veja se funciona. E se isso acontecer, vá em frente, altere esse URL por outra coisa e crie um site diferente Mas isso é sobre o código. Em uma palestra futura, veremos como você pode realmente implantá-lo no Netlify Depois disso, vamos dar uma olhada em como você pode publicá-lo para venda no alerta de spoiler do Pipi.com Studio Isso é feito a partir daqui. Do projeto de API. Mas com isso dito, obrigado por ficarem comigo até o final desta palestra. Se você tiver alguma dúvida sobre este projeto, estou realmente ansioso para respondê-la. Você pode me enviar uma mensagem aqui. Isso seria tudo com esta palestra. Obrigado por ficar comigo até o final. 12. Implantando nossa API na Web: Olá pessoal e bem-vindos de volta ao curso sobre APIs. Nesta palestra, veremos como podemos implantar o life, a API que criamos na como podemos implantar o life, a API que criamos última palestra e como podemos fazer isso gratuitamente em um método muito simples e fácil de entender, especialmente para iniciantes. Por isso, encontrei o site Netlify.com, que é muito semelhante ao Roku, mas o Heroku não Heroku Todos os planos foram pagos. O Netlify, por outro lado, tem um plano inicial gratuito Ele oferece 100 gigabytes de largura de banda para 3.300 minutos de construção, que eu achei suficiente Especialmente se você está apenas começando. Você pode implantar várias APIs e colocá-las à venda na API rápida. E quando você começar a obter alguma receita com eles, você pode prosseguir e fazer o upgrade para o plano profissional se achar que este é um pouco pequeno para você, mas mesmo assim acho que será suficiente por algum tempo. Você não pode usar 100 gigabytes de largura de banda tão rapidamente, especialmente se as informações retornadas forem assim Então, sem imagens, nada tão grande. Você pode ver aqui que eles tornam sites implantáveis ativos na web Você não obterá um domínio personalizado com o plano inicial. Como você pode ver aqui, temos aplicativo Netlify dot, mas ele está ativo Isso é tudo o que importa. Especialmente porque depois de implantá-la na API Rapid, os usuários finais reais não verão a URL que você forneceu à Rapid API para seu endpoint Será um URL diferente que a API Repid fornecerá a eles. Então, com isso dito, você pode ver que eles dizem que você pode escalar sem esforço e criam sites que veiculam sites que veiculam campanhas e lojas, coisas assim Portanto, há uma grande variedade de possibilidades aqui. Usaremos isso apenas para implantar nossa API web simples. Para isso, você pode ir em frente e se inscrever. Eu já fiz isso. Você pode ver que minha API de dividendos já está implantada. Eu brinquei um pouco com ele e você pode ver que eu consumi apenas 1 megabyte em 100 gigabytes e dois minutos de construção Isso é mais do que suficiente. Toda essa largura de banda e minutos de construção são redefinidos mensalmente, então não é uma vez, apenas mensalmente Mas se você quiser implantar seu próprio site, pode entrar no aplicativo Netlify.com Aqui. Você pode se conectar, em primeiro lugar, à sua conta do Github e clicar em Implantar com o Github Depois disso, você eliminará o repositório real que deseja implantar Aqui você já precisará do repositório real no Github. Colocado aí, você precisará pegar minha solução e seu próprio repositório Github ou você pode simplesmente usar meu repositório para Se você, então você o implantará com o Github. É uma autenticação de dois fatores que é feita aqui. E então, para todos os repositórios públicos você terá uma opção aqui Você pode prosseguir clicando aqui. Você também pode especificar a ramificação que deseja implantar. O diretório de funções é muito importante aqui porque o nome dele pode ser diferente. No seu caso, basta digitar qual é o nome dele no seu caso e, em seguida, você pode implantá-lo. Depois de fazer isso, ele será implantado. Esses são os minutos reais de construção os quais eles estavam falando agora. A implantação do site aciona uma construção e isso leva Você está limitado a 300 minutos, mas viu que eu usei apenas dois. Você pode ver a rapidez com que ele já foi implantado. Agora, se você quiser um domínio personalizado, que eu imagino que não, mas se você precisar comprar um e depois proteger seu site com HTTPS. Mas para o propósito deste vídeo, para o propósito do que estamos tentando fazer aqui, isso é redundante Agora você pode ver que nosso site foi implantado aqui. Na verdade, podemos especificar um subdomínio diferente que eles nos fornecem aqui Mas você não conseguirá se livrar do aplicativo Netlify dot, mas não pode dar a ele um nome mais bonito como eu fiz aqui com o Eu faço o aplicativo Netlify dot. E depois de fazer isso, seu site deve estar praticamente implantado, como você pode ver aqui E você deve ter duas rotas. O padrão que, se você se lembra, retornou bem-vindo à API de dividendos de ações E outra rota que, em um símbolo que você especifica, recuperaria os dados de dividendos que extraímos do site Street Insider Isso foi tudo para a implantação da API na Internet ao vivo. Na próxima palestra, veremos como você pode usar uma API rápida e implantá-la e, além disso, colocá-la à venda ao lado das outras excelentes que estão disponíveis aqui Mas se você está curioso para ver isso, espero vê-lo na próxima palestra. Muito obrigado por ficar comigo até o final desta 13. 4ff: Olá pessoal e bem-vindos de volta ao curso de API. Nesta palestra, veremos como você pode colocar sua API ativa implantada no site da Rapid API E como você pode gerar receita com isso, como você pode monetizá-lo Se você acompanhou nossa última palestra, você deve ter uma vida útil de API de dividendos na Internet com um URL real que você pode inserir no navegador Chrome ou em qualquer navegador que você use E ele deve retornar todas as informações de outro site que você copiou Depois de fazer isso, você deve ir em frente e acessar o Rapid API.com Aqui estão todas as APIs que são publicadas para venda ou mesmo gratuitamente, e você também deseja publicar sua API Você deve criar uma conta no Rapid API.com e depois acessar a seção Minhas APIs Como você pode ver, eu já tenho essa API de dividendos implantada Dei uma imagem, dei uma categoria que é finanças, uma breve descrição dos dados de dividendos mais de 75.000 ações entregues, formato Json inconveniente Como você viu, o formato em que esses dividendos vêm é Json Agora, você também pode ter uma descrição longa e aqui está a parte mais importante. Você lhe dará uma versão, você só terá uma versão. Então isso não importa, mas o URL é muito importante. Você também deve fornecer o URL base, que é este aqui, como você viu no navegador da web. Sem esse símbolo, esse era um caminho diferente. Depois de fazer isso, você pode ir em frente e acessar as definições. Aqui temos a definição do símbolo. Você pode seguir em frente e criar um endpoint. Aqui temos o nome, obtenha as informações de dividendos de uma empresa Assegure a descrição de que esse endpoint retornará informações sobre dividendos com base no símbolo que você forneceu nos últimos dez anos Ele também tem um parâmetro que é o símbolo. Você também pode dar um exemplo aqui. Por exemplo, o valor da maçã deve retornar algo. Também é do tipo string. Esse parâmetro, eu também dei uma resposta bem-sucedida retirada do navegador da web. Além disso, se você tiver e quiser criar outros endpoints, você também deve especificá-los aqui adicionando endpoints diferentes no botão Criar endpoint Você também pode criar endpoints semelhantes em grupos. Para isso, você pressionará o botão Criar grupo. Agora, a documentação da sua API, deixei o vazio aqui, mas se você tiver uma documentação que especifique com mais detalhes o que seu endpoint faz, você deve escrevê-la aqui O gateway, novamente, eu o deixei como API Rapid o forneceu para a comunidade. Eu não mudei nada na época para o Monetize deb, que é o motivo pelo qual vocês realmente vieram aqui, onde você pode realmente gerar receita com essa API que você criou aqui, você pode realmente criar alguns planos pagos Você pode fornecer uma solicitação básica com 20 solicitações por mês para que o usuário possa ver o que sua API retorna e como ela é. Em seguida, você pode especificar alguns outros. Você pode ver que eu tenho um plano profissional que tem um limite de taxa de dez solicitações por segundo. Também podemos fazer desse o plano recomendado ou outro, mas você também pode especificar um preço de assinatura. Depois de fazer isso, você pode publicar sua API. Depois disso, você poderá dar uma olhada nas análises e ver como está o desempenho da sua API. Qual é a latência média? Ele também receberá marca de API -9.5, o que é muito bom, mas é baseado em quantas solicitações bem-sucedidas existem e também na latência sobre a qual eu estava falando com você Mas com isso dito, agora você tem uma API implantada na Internet e também colocada à venda no PPP.com, e também colocada à venda no que era todo o nosso objetivo nesta seção Muito obrigado por ficar comigo até o final desta seção e espero vê-lo em futuras. Além disso, se você tiver alguma dúvida, não hesite em entrar em contato comigo aqui. Estou disponível para vocês. E, novamente, muito obrigado por se matricular neste curso e por ouvi-lo comigo. Tenha um bom dia. 14. Vulnerabilidades comuns de API: Olá pessoal, e bem-vindos de volta ao discurso sobre APIs. Nesta lição, exploraremos vulnerabilidades comuns de segurança de APIs, como injeção de SQL e falsificação de solicitações entre sites E também discuta estratégias de prevenção. Acho que isso é muito importante, especialmente se você estiver desenvolvendo sua própria API. Vamos começar entendendo as vulnerabilidades comuns de segurança da API Primeiramente, começaremos com a injeção de SQL, a mais comum. A injeção de SQL ocorre quando um invasor insere instruções SQL maliciosas em um campo de entrada ou solicitação, potencialmente concedendo acesso não autorizado a um banco de dados ou comprometendo a integridade Para evitar isso, podemos usar consultas parametrizadas ou instruções preparadas para separar a entrada do usuário dos Implementar validação de entrada e dados higienizados antes processamento são algumas das outras estratégias usadas para evitar esse tipo de ataque Em seguida, temos a falsificação de solicitações entre sites. Esses ataques induzem os usuários a executar ações não intencionais em um aplicativo da web, geralmente quando autenticados sem Para evitar isso, você pode usar tokens falsificados de solicitação cruzada do Ant e garantir que todas as solicitações mudem de estado Como exemplo, aqui publicamos e excluímos a necessidade de autenticação. No próximo exemplo, quebramos a autenticação. Essas vulnerabilidades ocorrem quando os mecanismos de autenticação não são implementados adequadamente, permitindo que os invasores obtenham acesso Para evitar isso, você pode implementar uma autenticação forte e um gerenciamento de sessões, usar o armazenamento seguro de senhas, ativar a autenticação multifator e testar regularmente as vulnerabilidades Outro tipo de vulnerabilidade de segurança da API é a desrealização insegura Aqui, os atacantes exploram vulnerabilidades nos processos de desrealização para executar código arbitrário ou obter acesso arbitrário Empregue práticas seguras de desrealização, incluindo listagem ampla, classes permitidas e uso de dados assinados sempre que A última vulnerabilidade de segurança é a exposição de dados confidenciais. Essas vulnerabilidades ocorrem quando informações confidenciais, como senhas ou tokens, não são protegidas adequadamente Você deve usar criptografia, por exemplo, TLS para dados em trânsito e dados confiáveis, e empregar algoritmos de criptografia fortes . Limite o acesso a dados confidenciais com base na necessidade de conhecimento. Passando para a parte mais importante desta palestra, as estratégias de prevenção Primeiro, você deve sempre validar e higienizar entradas do usuário para evitar que dados maliciosos entrem dados maliciosos Use modelos de segurança positivos, como lista branca, sempre que possível. E tente, para cada entrada especificar um tipo para ela. O usuário não pode inserir cadeias quando deveria inserir uma data e assim por diante Use consultas parametrizadas ou instruções preparadas para separar entradas do usuário Isso reduzirá drasticamente o risco de injeção de SQL. Implemente mecanismos de autenticação robustos e aplique verificações de autorização adequadas para garantir que somente usuários autorizados possam acessar recursos específicos Inclua tokens CSRF nas solicitações para verificar a autenticidade das solicitações recebidas e mitigar solicitações recebidas e Implemente a limitação de taxa para evitar abusos ou ataques de DDOS em sua API Neste curso, temos outra palestra especialmente dedicada à limitação e limitação de taxas Utilize cabeçalhos de CSP ou de política de segurança de conteúdo para mitigar ataques de script entre sites, especificando quais fontes de conteúdo podem ser carregadas podem ser carregadas Realize auditorias regulares de segurança, análises de código e testes de penetração para identificar vulnerabilidades Treine desenvolvedores e mantenedores sobre práticas seguras de codificação e a importância da segurança no ciclo de Mantenha todos os componentes, bibliotecas e estruturas atualizados para se beneficiar da segurança, patches e das atualizações que podem ser lançados com o tempo Epi's são a força vital dos sistemas de software modernos, mas seu uso generalizado os expõe a várias vulnerabilidades de segurança ao compreender vulnerabilidades comuns, como injeção escalar Os Epi's são a força vital dos sistemas de software modernos, mas seu uso generalizado os expõe a várias vulnerabilidades de segurança ao compreender vulnerabilidades comuns, como injeção escalar, CSRF e outras. E implementando estratégias robustas de prevenção como a mencionada aqui. Desenvolvedores como você e organizações podem fortalecer suas APIs contra possíveis ameaças Isso era sobre a API comum, ameaças de vulnerabilidade de segurança. E eu realmente espero que vocês tenham conseguido algo com isso. E você poderá implementar algumas das estratégias sobre as quais falamos aqui em suas próprias APIs. Com tudo isso dito, obrigado por ficarem comigo até o final desta palestra, e espero ver vocês na próxima 15. Limitação de taxa de API: Olá pessoal, e bem-vindos de volta ao discurso sobre APIs. Nesta palestra, falaremos sobre um assunto muito importante que é a sobre um assunto muito importante API de limitação de taxa e limitação de Limitação de taxa e alteração são técnicas usadas para controlar o número de solicitações feitas a uma API dentro de um período de tempo específico Esses mecanismos servem a vários propósitos cruciais. Eles ajudam a evitar o uso abusivo ou malicioso de uma API, como ataques distribuídos de negação de serviço ou raspagem Eles garantem acesso justo aos recursos da API entre todos os usuários. Impedir que um único cliente monopolize a capacidade dos serviços Eles mantêm o desempenho da API evitando sobrecargas Permitindo que ele atenda às solicitações de forma confiável. Novamente, as solicitações vêm em um ritmo normal por causa delas. Muitas APIs têm limites de uso descritos nos termos de serviço que os usuários devem seguir Esses limites são, em um nível concreto, implementados por meio de limitação e limitação de taxas A limitação de taxa e a aceleração são frequentemente usadas de forma intercambiável, mas Vamos falar agora sobre cada um deles para entender a diferença entre eles e o que cada um deles é exatamente. limitação de taxa restringe o número de solicitações que um cliente pode fazer dentro de uma janela de tempo específica, como 100 solicitações por minuto Quando o limite for atingido, o cliente deverá esperar ou receber uma resposta de erro se tentar fazer mais de 100 solicitações por minuto, e a contagem será redefinida após esse minuto específico. Isso é só um exemplo. Obviamente, o limite real pode ser diferente de uma API para outra. A limitação, por outro lado, controla a taxa na qual as solicitações são processadas no site do servidor Por exemplo, um servidor pode processar no máximo 50 solicitações por segundo, independentemente de quantas solicitações sejam recebidas. As solicitações de acesso são indicadas ou atrasadas. Há muitas estratégias de implementação quando se trata de limitação de taxa e limitação, e você realmente deve dar uma olhada nelas se estiver tentando criar sua Primeiro, temos o algoritmo do token bucket. Esse algoritmo envolve a atribuição tokens aos clientes a uma taxa fixa Cada solicitação consome um token. Se nenhum token estiver disponível de um cliente, esse cliente deverá esperar. Essa abordagem é flexível e pode lidar com rajadas ou tráfego A segunda estratégia é chamada de contadores de janelas fixas. Aqui, o limite da taxa é calculado dentro de janelas de tempo fixas, por exemplo, por minuto. Quando a janela expira, o contador é reiniciado. Essa estratégia pode levar a picos nas taxas se não for gerenciada com cuidado Portanto, você realmente deve prestar atenção ao tamanho seu contador em uma janela de tempo específica. Por fim, também temos o algoritmo leaky bucket. É semelhante a um bucket físico com vazamento: as solicitações são processadas a uma taxa constante, solicitações de acesso transbordam e Esse método garante uma taxa constante de processamento. As melhores práticas quando se trata e limitação de taxas são, antes de tudo, comunicar claramente os limites de taxa e as políticas de limitação aos e as políticas de limitação Isso geralmente é feito por meio documentação e cabeçalhos de resposta Em seguida, você pode implementar respostas de erro fáceis de usar e fornecer mecanismos de repetição para clientes que excedam os limites de taxa Obviamente, você deve monitorar continuamente uso da API para detectar e mitigar problemas de abuso ou desempenho Colete e analise dados para ajustar os limites de taxa dinamicamente Outro conselho que eu daria a você aqui seria vincular a limitação de taxa à autenticação do usuário Permitindo limites diferentes com base nas funções do usuário ou nos pneus. Você pode implementar um limite maior para alguém que tenha um privilégio maior Por exemplo, um administrador pode receber 100 solicitações por minuto, enquanto um usuário normal receberia 50 ou 25. Você também deve planejar limites de intermitência para acomodar picos ocasionais Com tudo isso dito, e a limitação da taxa de API são ferramentas vitais para manter a estabilidade, a segurança e a imparcialidade dos serviços de API no ecossistema digital atual Ao entender esses mecanismos, implementá-los de forma eficaz e aderir às melhores práticas, provedores de API como você podem encontrar o equilíbrio certo entre fornecer acesso a seus recursos e proteger seus sistemas contra uso indevido ou até mesmo abuso Essa é exatamente a razão pela qual acho que a emissão e a limitação de vermelho são uma parte prejudicial da implementação de sua própria API Obrigado por ficarem comigo até o final desta palestra Eu realmente espero que você tenha conseguido algo com isso. E limitar e alterar será algo que você implementará no futuro em sua Estou ansioso para ver você na próxima palestra. 16. Como manter sua API segura?: Olá pessoal e bem-vindos de volta ao discurso sobre APIs. Nesta palestra, veremos como exatamente você pode manter seguras as APIs que você desenvolve, malware ou pessoas com más Esse é um tópico muito importante hoje em dia qual acho que poucas pessoas estão falando. Há vários aspectos nisso. Então, vamos abordá-los nesta palestra e espero que, ao final, você tenha uma melhor compreensão sobre quais são exatamente as implicações de manter a API que Antes de tudo, você precisa entender a importância da segurança da API. APIs são como pontes que permitem que dados e funcionalidades fluam entre diferentes aplicativos, tanto interna quanto externamente Proteger essas pontes é crucial por vários motivos. O primeiro é a proteção de dados. As APIs geralmente transmitem dados confidenciais. Uma ponte pode resultar na exposição de informações privadas, dados financeiros ou propriedade intelectual. Você também tem aqui o gerenciamento de reputação Um incidente de segurança pode manchar a reputação da sua organização, corroendo a confiança entre clientes, parceiros e Você pode pensar aqui nas várias quedas de reputação que ocorreram em muitas empresas que, na verdade, tiveram uma violação no banco de dados de usuários e suas senhas vazaram Como exemplo aqui, fico pensando na ação X da empresa que está vendendo tênis A terceira coisa que temos aqui entender a importância da conformidade com os valores mobiliários da ABI Muitos setores estão sujeitos a regulamentações rígidas de proteção de dados. Não proteger as APIs pode levar a consequências legais e multas pesadas O segundo ponto que você precisa ter em mente ao falar sobre segurança de API é a anatomia dela. Envolve várias camadas, como eu disse antes, e componentes. Você pode pensar aqui na autenticação, que é verificar adequadamente a identidade das partes envolvidas E essa é a primeira linha de técnicas de defesa, como chaves de API, protocolo de juramento e tokens da web Jason, comumente usados para essa finalidade Também temos autorização que é após a autenticação. E sua função é determinar quais ações e dados cada usuário ou sistema tem permissão para acessar. O controle de acesso e os escopos baseados em funções ajudam a reforçar isso. Porque em aplicativos, funções diferentes têm privilégios diferentes Um usuário e um administrador são muito diferentes. Você também precisa pensar na criptografia de dados. Você pode usar o HTPS para criptografar dados em trânsito e considerar a criptografia de dados em repouso para dados armazenados Em seguida, é fundamental que você faça a validação da entrada. Você deve proteger suas APIs de ataques comuns, como injeção de scull e scripts entre sites , validando e higienizando as informações que seus usuários estão fornecendo à A limitação de taxa é outra técnica muito comum que evita o abuso ou o uso excessivo de sua API, que pode levar à exaustão de recursos e à interrupção e Você cria um limite de chamadas que seus clientes podem fazer para sua API. Por fim, registro e monitoramento. Ao desenvolver sua API, você deve manter registros detalhados e monitorar tráfego da API em busca de padrões incomuns ou incidentes de segurança Ferramentas como o SEE M, que vem de sistemas de gerenciamento de eventos e informações de segurança sistemas de gerenciamento de eventos e são inestimáveis para esse propósito A terceira coisa que você precisa ter em mente ao falar sobre segurança de API é chamada de melhores práticas de autenticação de API. A autenticação é a base da segurança da API e aqui estão algumas das melhores práticas Você deve usar APIs para autenticar clientes que acessam sua API e garantir que eles sejam armazenados com segurança Periodicamente, você deve implementar para que a autenticação e a autorização do usuário sejam seguras e padronizadas . 0 é amplamente adotada e fornece vários tipos de concessão para diferentes casos de uso Também tenho um tutorial sobre isso aqui que explica exatamente como esse fluxo de autorização e autenticação está funcionando. E, finalmente, os JWTs, que vêm dos tokens Json Se sua API emitir tokens para autenticação, use-os. Eles são compactos, independentes e podem transmitir as reivindicações dos usuários com segurança Ao falar sobre a segurança de uma API, você também deve pensar em autorização e controle de acesso. Depois que um usuário é autenticado, você precisa controlar o que ele pode fazer na sua API Você pode implementar o controle de acesso baseado em qualquer função. Atribua funções a usuários ou sistemas e defina permissões com base nessas funções. Revise e atualize regularmente as permissões. Como falamos anteriormente, um administrador e o usuário são muito diferentes no que podem fazer em um aplicativo. Ou você pode usar, como eu disse, escopos. Os escopos são usados para ajustar o controle de acesso em sua API Limite o acesso a recursos ou ações específicas com base no consentimento do usuário e no escopo do cliente. Assim, cada cliente obtém um escopo e, com base nesse escopo, os privilégios dele são calculados Ao falar sobre criptografia de dados, podemos primeiro falar sobre o HTTPS, a segurança da camada de transporte. Você deve sempre usá-lo para criptografar dados em trânsito. Tls garante que os dados trocados entre o cliente e sua API estejam protegidos e não possam ser Confiança de dados, você deve considerar criptografar dados confidenciais armazenados em seu servidor. Portanto, não apenas no tráfego quando os dados estão sendo transmitidos nas solicitações, você também deve mantê-los armazenados se forem confidenciais, como senhas ou detalhes de cartões em seus servidores criptografados, basta usar a criptografia padrão do setor que você pode encontrar facilmente ao pesquisar no Google Ao falar sobre validação de entrada, você deve primeiro limpar a entrada do usuário, o que significa que você nunca deve confiar na entrada do usuário significa que você nunca deve confiar Você deve fazer isso para evitar ataques comuns, como injeções de Cl E outra coisa que você pode fazer quando se trata de validação de entrada é usar os gateways de API Implementá-los pode filtrar limpar as solicitações recebidas antes que elas cheguem aos endpoints da API ou ao banco de dados para recuperar informações ou alterar implementação de limites de taxa define uma barreira que é muito importante para evitar ataques de abuso ou negação de serviço Considere limites comerciais diferentes para diferentes tipos de clientes ou usuários. Finalmente, registro e monitoramento. Mantenha registros detalhados da atividade da API, incluindo eventos de autenticação e autorização. E retenha os registros por um período apropriado para auxiliar nas investigações e implementar monitoramento e alertas em tempo real para detectar e responder adequadamente aos incidentes de segurança A segurança da API não é um esforço único, mas um processo contínuo que requer vigilância e adaptação às ameaças em evolução Como você sabe, a base de texto está se desenvolvendo rapidamente e precisamos acompanhá-la entendendo os componentes essenciais da segurança da API e seguindo as melhores práticas Você pode proteger seus ativos digitais ou bancos de dados, preservar a reputação da sua organização e garantir a conformidade com os regulamentos. Lembre-se de que a segurança é uma responsabilidade compartilhada e todas as partes interessadas em sua organização devem ser educadas e cientes de seu papel na manutenção da segurança da API Com as estratégias e ferramentas certas, você pode navegar com confiança pelo mundo dos aplicativos orientados por API e, ao mesmo tempo manter seus dados e sistemas seguros Eu realmente espero que esta palestra ajude você a fazer isso. Muito obrigado por ficar comigo até o final, e espero ver você no futuro 17. Serviços web: Tudo giz. E bem-vindo de volta a este curso de API. Nesta palestra, examinaremos serviços da web porque eles são o princípio fundamental dos sistemas interconectados modernos, permitindo que aplicativos e componentes de software se comuniquem e troquem dados sem problemas pela Eles revolucionaram a forma como criamos, integramos e ampliamos o software, abrindo caminho para um mundo de interconectados Nesta lição, exploraremos os principais aspectos dos serviços da Web, seus tipos, protocolos e seu papel no software moderno em sua essência. Um serviço web é um sistema de software projetado para suportar a interoperável interação interoperável entre máquinas em uma rede Ele permite que os aplicativos se comuniquem e compartilhem dados, independentemente de suas plataformas, linguagens de programação ou sistemas operacionais subjacentes . Essa interoperabilidade é uma característica fundamental dos serviços da Web e os diferencia dos aplicativos monolíticos tradicionais Os serviços da Web podem ser amplamente categorizados em três tipos principais Primeiro, temos os serviços Soap Web. Este é um protocolo para troca informações estruturadas na implementação de serviços web Ele depende do XML como formato de mensagem e geralmente usa HTTP ou SMTP como protocolo de transporte Os serviços web Soap são conhecidos por seus padrões rígidos e forte suporte à segurança e confiabilidade. No entanto, hoje em dia eles se tornaram obsoletos, pois as pessoas tendem a preferir os serviços web Rest que usam Jason como Rest é um estilo arquitetônico projeta aplicativos de rede. Os serviços web RESTful aderem a um conjunto de restrições, incluindo apatridia, arquitetura cliente-servidor e interface uniforme. Eles usam métodos HTPP padrão, como get, put, post e delete, para realizar operações em recursos Isso os torna leves e muito fáceis de implementar. Por fim, temos serviços web Json e XML. Esses são protocolos de chamada de procedimento remoto que usam Json e XML como formato de mensagem Eles fornecem uma maneira simples de invocar métodos em servidores remotos, tornando-os adequados para vários aplicativos Especialmente quando simplicidade e eficiência são essenciais. Agora, para permitir a comunicação entre serviços da Web e clientes, vários protocolos importantes entram em ação. o primeiro protocolo que entra em jogo, Eu tenho um curso inteiro sobre o primeiro protocolo que entra em jogo, e nós o mencionamos até mesmo aqui em várias palestras E é o protocolo de transferência de hipertexto. O HTTP é a base da comunicação na web. Naturalmente, os serviços da Web geralmente dependem do HTTP como protocolo de transferência para enviar e receber dados entre clientes e servidores. Ele fornece uma forma padronizada de fazer solicitações e lidar com respostas Também temos o protocolo Soap que emprega XML para formatação de mensagens e geralmente depende ainda mais de HTTP ou SMTP Ele inclui um conjunto de regras para transações de segurança e confiabilidade de mensagens. Também temos descanso aqui, o que é muito mais importante. O resto vem da transferência representacional do estado. Os serviços web que são RESTful usam métodos HTTP para interagir com recursos identificados por URIs Eles adotam os princípios da apatridia, o que significa que cada solicitação é independente uma da outra e não depende de um Eles também têm como aspectos principais uma interface uniforme e uma arquitetura em camadas Por fim, temos Jason e XML, que são formatos de dados comuns para estruturar mensagens trocadas entre serviços da web e clientes Eles são legíveis por humanos e analisáveis por máquina, oferecendo flexibilidade na Quando se trata do papel dos serviços web atualmente no software moderno, eles se tornaram a espinha dorsal absoluta do ecossistema moderno, facilitando a integração, a extensibilidade e a escalabilidade na arquitetura de microsserviços e a escalabilidade Pequenos serviços implantáveis de forma independente se comunicam por meio de serviços da web Essa abordagem permite agilidade, escalabilidade e fácil manutenção Os aplicativos móveis geralmente dependem de serviços da Web para acessar recursos de back-end , incluindo dados do usuário de bancos de dados, arquivos de mídia e informações em tempo real. dispositivos e sensores da Internet das Coisas se comunicam entre serviços em nuvem e serviços da Web, permitindo a coleta e o controle de dados a partir de locais remotos. Por fim, as plataformas de comércio eletrônico usam serviços da web para facilitar as transações on-line, incluindo gateways de pagamento, gerenciamento de inventário e remessa Embora esses serviços da Web ofereçam inúmeras vantagens, eles também apresentam alguns desafios. Primeiro, você deve garantir a segurança dos serviços da web, incluindo autenticação e criptografia de dados. Isso é muito importante para evitar acessos não autorizados e violações de dados A otimização do desempenho dos serviços web também inclui tempos de resposta e escalabilidade É essencial para fornecer uma experiência de usuário responsiva, lidar com alterações e atualizações nos serviços da web A API, embora mantenha uma compatibilidade com versões anteriores é um equilíbrio delicado e é aí que entra o controle de versões. Por fim, uma documentação abrangente e atualizada é essencial para ajudar os usuários a entender como usar os serviços da Web de forma eficaz Em resumo, os serviços web transformaram a forma como criamos e interagimos com o software. Eles fornecem uma abordagem flexível e padronizada para integrar aplicativos e Ao entender esses diferentes tipos de serviços da Web sobre os quais falamos, seus protocolos subjacentes e o papel na arquitetura de software moderna, você pode aproveitar essa tecnologia poderosa para criar sistemas interconectados, eficientes e escaláveis Com tudo isso dito, agradeço muito a vocês por permanecerem comigo até o final desta palestra, e espero ver vocês na próxima 18. Como depurar um pedido: Olá pessoal, e bem-vindos de volta a este curso. Nesta palestra, discutiremos a solução de problemas e a depuração Porque, na minha opinião, pelo menos como desenvolvedor, é muito importante entender como solucionar problemas e depurar solicitações HTTP Essa habilidade é essencial para garantir que os aplicativos da Web funcionem sem problemas, diagnosticando e corrigindo problemas e oferecendo uma experiência de usuário perfeita As solicitações HTTP estão no centro de cada interação na web, seja carregando uma página da web, enviando um formulário, obtendo dados de uma API ou até mesmo transmitindo conteúdo multimídia Tudo começa com uma solicitação HTTP. No entanto, essas solicitações nem sempre estão isentas de erros. Vários fatores podem levar a problemas , como configurações incorretas do servidor, problemas de rede, bugs no site do cliente ou conflito entre componentes diferentes E é exatamente aqui que entra esta palestra : entender primeiro os problemas comuns que podem surgir nas solicitações HTTP é a primeira etapa, ineficaz Aqui temos coisas como erros de servidor, porque os servidores podem encontrar vários erros, como 44, que é o código para não encontrado, 500 para erro interno do servidor ou 53, que é serviço indisponível Esses erros podem resultar de servidores mal configurados ou problemas com aplicativos Também temos erros do lado do cliente. Clientes como navegadores da Web também podem gerar esses erros, como 400 por solicitação inválida ou 43 por solicitação proibida. Isso geralmente ocorre devido a problemas com a solicitação ou as permissões do cliente. Problemas de rede são outro fator que pode interromper a comunicação entre o cliente e o servidor Isso inclui problemas como DNS, falhas de resolução, conexões lentas ou até mesmo interrupções completas na rede Violações de compartilhamento de recursos de origem cruzada também podem bloquear solicitações para um domínio diferente. Se não for configurado corretamente, isso pode causar problemas de segurança e funcionalidade. Por fim, temos erros de SSL e TLS. Essas duas camadas de segurança podem causar erros. Eles podem ocorrer quando as conexões HTTP não são estabelecidas adequadamente. Esses erros podem interromper a transferência segura de dados. Agora, a parte mais importante da lição, depuração Esse pode ser um processo sistemático para identificar e resolver problemas de forma eficaz. Aqui estão as etapas a seguir. Primeiro, verifique as ferramentas do desenvolvedor do navegador. A maioria dos navegadores da Web modernos oferece ferramentas para desenvolvedores que permitem inspecionar solicitações de rede Você pode visualizar solicitações e cabeçalhos de resposta, cargas e mensagens de erro Isso acontecerá no Google Chrome, por exemplo, se você pressionar o controle F 12 ou a função F 12 se estiver em um Mac e depois acessar a rede. Em seguida, você deve revisar os códigos de status HTTP. Esses códigos na resposta fornecem informações valiosas sobre o resultado da solicitação. Familiarize-se com os códigos de status comuns para identificar o problema rapidamente Você também pode inspecionar cabeçalhos de solicitação e resposta. Preste muita atenção aos cabeçalhos de solicitação e resposta. Eles podem revelar detalhes importantes sobre o problema, como tokens de autenticação ausentes, tipos de conteúdo incorretos ou problemas no curso. Em seguida, você pode examinar os dados da carga útil se a solicitação envolver transferência de dados Inspecione as anomalias ou problemas da carga útil. Formatos de dados incompatíveis, dados corrompidos ou parâmetros ausentes podem causar problemas Você também deve verificar os registros do servidor. Os registros do servidor podem oferecer informações sobre o que está acontecendo no servidor. Eles podem revelar erros, problemas de desempenho ou, novamente, configurações incorretas Em seguida, você pode verificar a conectividade da rede Certifique-se de que sua conexão de rede na máquina da qual você está enviando solicitações esteja estável. Às vezes, problemas intermitentes de conectividade podem levar a falhas na solicitação Por fim, você pode usar ferramentas de depuração on-line. Várias ferramentas on-line estão disponíveis para testar e depurar Essas ferramentas podem ajudar a simular solicitações, verificar cabeçalhos e validar respostas Aqui, algo digno de menção é que, se você estiver desenvolvendo o aplicativo web em o erro HTTP está acontecendo, você pode pressionar novamente a função F 12 para acessar as ferramentas de desenvolvedor do navegador e, em seguida, pressionar o comando P e procurar P e procurar o script em que acha que o erro está acontecendo, colocar um ponto de interrupção lá e continuar com a depuração, e continuar com a depuração o que você pode fazer atualizando a página Quando se trata de ferramentas de depuração comuns, há várias que podem ajudar na depuração Primeiro, temos, é claro, Postman. Essa popular ferramenta de teste de API permite enviar e receber solicitações HTTP, inspecionar cabeçalhos e visualizar respostas Em seguida, temos Curl. A ferramenta de linha de comando é excelente para enviar solicitações HTTP e visualizar respostas em um terminal. Também temos o Hitler, que é um proxy de depuração da web que registra e inspeciona o tráfego HTTP e HTTPS entre o computador que está instalado Por fim, temos o Wireshark, que é um analisador de protocolo de rede e pode ajudá-lo a solucionar problemas no nível da rede que é um analisador de protocolo de rede e pode ajudá-lo a solucionar problemas no nível da rede que afetam as solicitações HTTP. Quando se trata de solução de problemas e depuração, a colaboração eficaz com sua equipe é vital para resolver problemas complexos Mantenha uma documentação completa de suas descobertas, incluindo mensagens de erro, registros e etapas de depuração Compartilhe essas informações com colegas que possam ajudar a diagnosticar e resolver o problema Concluindo, solucionar problemas e depurar solicitações HTTP é uma habilidade fundamental para desenvolvedores da Web, pois o HTTP é o protocolo fundamental das Ser capaz de identificar e resolver problemas de forma rápida e eficaz é essencial para fornecer aplicativos web confiáveis e uma experiência de usuário perfeita Usando ferramentas de desenvolvedor, examinando códigos de status, inspecionando cabeçalhos e cargas, verificando os registros do servidor e utilizando ferramentas de depuração Desenvolvedores como você podem diagnosticar e corrigir problemas de solicitação HTTP enquanto mantêm seus aplicativos funcionando sem problemas Com tudo isso dito, agradeço muito a vocês por ficarem comigo até o final desta palestra Espero que isso tenha lhe dado uma vantagem na solução de problemas e na depuração de solicitações HTTP que surgirão no Eu era Gs e estou ansioso para ver você na próxima. 19. Códigos de status HTTP: Olá pessoal, e bem-vindos de volta ao discurso. Nesta palestra, vamos dar uma olhada nos códigos de status HTTP, também chamados de códigos de retorno Essa é uma parte fundamental da comunicação na web. A razão pela qual esses códigos de dados são tão importantes é porque eles são emitidos por um servidor em resposta à solicitação de um cliente feita a esse servidor específico e são as informações mais relevantes e curtas sobre o andamento da solicitação. O primeiro dígito do código de status especifica uma das cinco classes padrão de respostas As frases de mensagem mostradas são típicas, mas qualquer alternativa legível por humanos pode ser fornecida Como eu estava dizendo, os códigos de retorno HTTP têm três dígitos. Se esses três dígitos começarem com um, o status que você está recebendo é informativo, o que significa que a solicitação foi Se começar com dois, significa que a solicitação foi uma operação bem-sucedida, ou seja, foi recebida, compreendida e aceita com sucesso . Com três, isso significa que um redirecionamento, como em outras ações, precisa ser realizado para concluir a solicitação Se começar com quatro, significa que sua solicitação teve um erro do cliente. Algo deu errado no lado do cliente e a solicitação contém uma sintaxe incorreta ou simplesmente não pode ser atendida Por fim, se seu código de três dígitos começar com o dígito cinco, isso significa que sua solicitação teve um Algo deu errado no lado do servidor, por exemplo, o servidor pode não atender a uma solicitação aparentemente válida. Agora, vamos examinar as diferentes categorias de respostas e listar alguns exemplos para cada uma delas. Para respostas informativas, temos o código 100 com a palavra-chave continue Isso significa que o servidor recebeu os cabeçalhos da solicitação e o cliente deve continuar enviando o corpo da solicitação Esse código é usado em situações em que o servidor precisa confirmar que está disposto a aceitar a solicitação. Por exemplo, um usuário pode enviar um arquivo grande para ser carregado em um serviço de compartilhamento de arquivos. Pense em transferir, o servidor responde com 100 contínuos para indicar que está pronto para receber esse arquivo grande e o usuário pode prosseguir com o upload real em respostas informativas Também temos 11 com as palavras-chave de protocolos de comutação. O servidor está indicando aqui uma mudança no protocolo, como a mudança de HTTP para um soquete web O cliente deve seguir esse novo protocolo para comunicação posterior. Para a próxima categoria, temos respostas bem-sucedidas, e aqui temos um código muito conhecido, que é 200, seguido pela palavra-chave ok. Esse é o código de sucesso mais comum, indicando que a solicitação foi bem-sucedida, o servidor atendeu à solicitação e a resposta contém os dados ou informações solicitados. Por exemplo, pense em um usuário acessando uma postagem de blog e o servidor responde com um código de status de 2000 K entregando o conteúdo do blog solicitado com sucesso Também temos 21, o que significa criado. Esse código de status indica que a solicitação resultou na criação de um novo recurso. Geralmente é usado com solicitações de postagem ou venda. Você pode pensar em um usuário que envia um formulário de registro em um site e o servidor responde com 21 criados, esperançosamente para indicar que uma nova conta de usuário foi Além disso, nas mensagens de sucesso, temos 24 sem conteúdo enquanto o servidor processou a solicitação com sucesso. Nesse caso, ele não tem corpo de resposta para enviar de volta ao cliente. Isso geralmente é usado para solicitações de exclusão. Se um usuário excluir um comentário em uma plataforma de mídia social e o servidor responder com 24 sem conteúdo, ele confirma a remoção sem retornar nenhum dado redundante adicional Passando para as mensagens de redirecionamento, temos 31 com as palavras-chave movidas permanentemente O recurso solicitado foi movido permanentemente para um novo URL. O cliente deve atualizar seus favoritos ou links adequadamente Você pode pensar em um site de comércio eletrônico que muda sua estrutura de URL e o usuário tenta acessar um site antigo. Página do produto. O servidor responde com 31 movidos, redirecionando permanentemente o usuário para a nova URL do Também temos aqui o código de 34 não modificado. Esse status é usado para indicar que a versão em cache do recurso do cliente ainda é válida e não há necessidade de baixá-la novamente. Se um usuário acessa um site dos EUA frequentemente visitado, o servidor, reconhecendo que o cache do navegador do usuário está atualizado, responde com esses três ou quatro não modificados, indicando que a versão em cache ainda é válida e que nenhum dado novo Para respostas de erro do cliente, temos 400, o que é uma solicitação incorreta. O servidor não conseguiu entender a solicitação aqui devido à sintaxe inválida, falta de parâmetros ou talvez a outros problemas no site do cliente Pense em um usuário que envia uma consulta de pesquisa com parâmetros inválidos em um site de reservas de viagens e o servidor responde com 400 solicitações incorretas, e o servidor responde com indicando que a solicitação Além disso, temos 41 para pessoas não autorizadas. A solicitação requer autenticação do usuário. O cliente que envia essa solicitação deve fornecer credenciais válidas, por exemplo, um nome de usuário e senha ou um token Tudo isso para acessar o recurso. Por exemplo, se um usuário tentar acessar um documento particular em um serviço de armazenamento em nuvem sem a autenticação adequada, o servidor naturalmente responderá com 41 solicitações não autorizadas, solicitando o usuário forneça credenciais de registro válidas antes receber toda a resposta Por fim, temos 43 proibidos. O servidor entendeu a solicitação , mas se recusa a atendê-la. A solicitação do cliente é válida, mas o servidor decidiu não servir o recurso. Se um usuário tentar acessar uma seção exclusiva para administradores de um aplicativo web e o servidor responder com 43 proibidos, isso indica que o usuário não tem as permissões necessárias para essa ação Você pode ver que 41 não autorizados são recebidos quando você não fornece nenhuma credencial e 43 proibidos são recebidos quando você fornece credenciais, mas eles não têm as permissões necessárias Também temos 44 não encontrados aqui. O recurso solicitado não foi encontrado no servidor. Isso indica que o URL é inválido ou que o recurso não existe mais Se um usuário clicar em um link quebrado que levou a uma página de produto excluída em um site de comércio eletrônico, o servidor responderá com 44 não encontrado, a fim de notificar o usuário de que o recurso solicitado não existe mais Para respostas de erro do servidor, temos 500, que significa Erro interno do servidor. Essa é uma mensagem de erro genérica e indica que uma condição inesperada impediu o servidor de atender à solicitação É uma pegadinha para erros do lado do servidor. Pense aqui em um usuário que tenta enviar um pedido em uma loja virtual, mas devido a um problema inesperado no servidor, essa solicitação resulta em um erro interno 500 do servidor. O usuário é aconselhado a tentar novamente mais tarde. Além disso, temos 52 para gateway inválido. Esse código de status indica que um servidor atuando como gateway ou proxy recebeu uma resposta inválida de um servidor upstream, geralmente indica problemas de rede Você pode pensar em um usuário que acessa um servidor web ou uma API que atua como gateway ou outro serviço O servidor gateway encontra um problema ao encaminhar a solicitação para o servidor upstream, resultando em uma resposta de gateway de 52 leitos Obviamente, há muito mais códigos de retorno do que os que eu enumerei, mas caso você encontre um que não esteja mencionado aqui, você pode pesquisar no Google e entenderá exatamente o que aconteceu com Quando se trata da distinção entre métodos HTTP seguros e não seguros, isso não está diretamente relacionado ao código de status HTTP Métodos seguros, como pegar e entregar, são projetados para não ter um impacto significativo nos recursos. Eles geralmente estão associados a respostas bem-sucedidas ou informativas Embora métodos inseguros, como colocar ou publicar, possam ter uma variedade de respostas dependendo da situação específica, incluindo sucesso, erros do cliente e do servidor Como conclusão desta lição, códigos de retorno HTTP são essenciais para entender os resultados das solicitações HTTP. Eles fornecem informações sobre o sucesso, o redirecionamento, erros do cliente e até mesmo os erros do servidor associados a uma determinada solicitação Esses códigos são uma parte fundamental do desenvolvimento e solução de problemas da Web, ajudando desenvolvedores como você e usuários a diagnosticar problemas e interpretar os resultados de suas interações com os serviços da suas interações com Com tudo isso dito, agradeço a vocês por permanecerem comigo até o final desta palestra e espero ver vocês na próxima 20. Métodos de solicitação HTTP: Olá pessoal e bem-vindos de volta a este curso. Nesta palestra, examinaremos um conceito muito importante, que são os métodos HTTP Eles geralmente são chamados de verbos HTTP. E eles são a base da comunicação entre clientes e servidores na web mundial, eles definem as ações que o cliente pode solicitar de um servidor, desde a recuperação de dados até a modificação Nesta lição, exploraremos os vários métodos HTTP, eles são exemplos práticos, seu papel na comunicação na web sua classificação como seguros ou inseguros E o principal conceito fundamental da potência do item. Para começar, vamos primeiro entrar na sigla CRM. Ela representa as quatro operações fundamentais para gerenciar dados em um banco de dados ou sistema de armazenamento de dados. É comumente usado no contexto de APIs, bancos e desenvolvimento de software para descrever as ações básicas que podem ser executadas nos dados Cada letra na sigla corresponde a uma operação específica C é para criar. A operação de criação envolve a adição de novos dados, registros ou recursos a um banco de dados ou armazenamento de dados. É a ação de inserir uma nova informação ou uma nova entidade no contexto de uma API, o que normalmente significa enviar uma solicitação para criar um novo recurso Nossa carta é para leitura nesta operação em comprimidos recuperam ou acessam dados de um banco de dados ou armazenamento de dados Essa operação não modifica a data. É tudo uma questão de buscar e revisar as informações existentes . Em APIs Essa aspirina corresponde ao envio de uma solicitação para recuperar dados de U significa atualização. Isso envolve a modificação de dados existentes em um banco de dados. É a ação de fazer alterações em um registro existente, como atualizá-lo, atributos ou conteúdo. Em uma API. atualização normalmente exige o envio de uma solicitação para modificar um recurso. D significa exclusão. E essa operação é a ação de remover registros ou recursos de dados de um banco de dados ou armazenamento de dados. Isso resulta na remoção permanente das informações especificadas. No contexto das APIs, isso corresponde ao envio uma solicitação para remover um recurso As operações do CRPD são fundamentais no gerenciamento e manipulação de dados Elas servem como base para criar e interagir com bancos de dados, serviços da Web e aplicativos que precisam realizar essas tarefas essenciais ao projetar APIs ou trabalhar com bancos As operações de CRPD são um conceito crucial para desenvolvedores como Q, pois fornecem uma maneira padronizada de gerenciar dados Falamos primeiro sobre as operações do CRPD, pois elas se entrelaçam com os verbos HTTP das postagens de Create, get from Reed, put from Update and Delete, como Vamos voltar agora aos métodos HTTP. Em primeiro lugar, ainda é usado para recuperar os dados de um recurso que provavelmente está identificado por um parâmetro de ID ou uma lista geral que contém todos os elementos desse recurso Algumas observações sobre as solicitações GET indicam que elas podem ser armazenadas em cache e marcadas como favoritos Eles permanecem no histórico do navegador e nunca devem ser usados ao lidar com dados confidenciais. Além disso, eles têm algumas restrições em relação ao comprimento e a essa saída. Ao defini-los, eles são usados apenas para recuperar dados e não modificá-los em nenhuma forma ou formato Imagine que você está usando um navegador para acessar um site de notícias on-line. Quando você clica em um artigo de notícias, seu navegador envia uma solicitação GET ao servidor do site solicitando o conteúdo do artigo. O servidor responde enviando de volta o artigo solicitado, permitindo que o cliente o leia Em seguida, o método post HTTP saúda o novo recurso e o envia para ser processado pelo servidor Não é seguro e pode ter efeitos colaterais no servidor ou no recurso Agora , quando se trata de métodos de postagem, as observações são que, como getMethod, eles não podem ser armazenados em cache, marcados ou mesmo interferir métodos de postagem, as observações são que, como getMethod, eles não podem ser armazenados em cache, marcados no histórico do navegador E também não têm restrições quanto ao comprimento. Além disso, o botão Voltar, se pressionado na solicitação de postagem, reenviará os dados Ao contrário de uma solicitação GET, em que não prejudicará um cenário da vida real aqui, imagine que você está usando um aplicativo de mídia social e decide criar uma nova postagem. Quando você cria o botão de publicação real, o aplicativo envia uma solicitação de postagem ao servidor, incluindo a mídia anexada de texto e imagem. Os processos do servidor que você solicitará salvam a postagem Visível para seus seguidores. Em seguida, temos o método HTTP, mas essas atualizações são recursos especificados, o que significa que ele substitui todas as três apresentações atuais recurso de destino pela carga útil da solicitação A principal diferença quando se trata dos métodos post e PUT são os resultados obtidos ao repeti-los repetidamente. Embora o método put sempre produza o mesmo resultado ao atualizar um recurso repetidamente, o método post terá efeitos colaterais se tentar dobrar a mesma entidade em um sistema. Imagine que você tem um blog pessoal e percebe um erro de digitação em um de seus artigos publicados, usa um sistema de gerenciamento de conteúdo e faz correções no conteúdo do artigo ao salvar as alterações feitas pelo CM, envia uma solicitação para atualizar o artigo no servidor garantindo que a versão corrigida agora envia uma solicitação para atualizar o artigo no servidor garantindo que a seja exibida Em seguida, temos esse método que solicita a remoção de um recurso na URL especificada. Ele deve excluir o recurso, se ele existir. Digamos que você tenha um aplicativo de e-mail aberto, como o Gmail e queira bagunçar sua caixa de entrada removendo um Quando você seleciona esse e-mail específico e clica em excluir, o aplicativo envia uma solicitação ao servidor de e-mail que remove o e-mail da sua caixa de entrada Quanto ao método HTTP, batch girls, ele é usado para aplicar modificações parciais em um recurso. Geralmente é usado quando você deseja atualizar somente um subconjunto da data dos recursos Imagine que você está usando um aplicativo de gerenciamento de tarefas para acompanhar seu trabalho. Você percebe que sua data ou uma tarefa mudou. Assim, você abre o aplicativo e atualiza apenas a data de vencimento sem alterar nenhuma outra tarefa VPLS O aplicativo enviará uma solicitação em lote ao servidor, que modifica somente a data de vencimento da tarefa seguir, encontramos uma lacuna semelhante a uma lacuna, mas requer apenas os cabeçalhos do recurso sem os dados reais, ela é usada para verificar se os recursos resultaram nos dados ou existência sem transferir todo o conteúdo real Isso poderia ser usado, por exemplo, se você estivesse navegando um site de compras, quisesse comprar um produto meu. Antes de ver os detalhes do produto, você clica no botão verificar disponibilidade. O site envia uma solicitação ao servidor solicitando dados como disponibilidade do produto, preço e informações de estoque sem carregar a página inteira do produto e todos os detalhes correspondentes. Por fim, temos o método HTTP de opções. Esse método recupera informações sobre as opções de comunicação disponíveis para um recurso Ele permite que um cliente descubra quais métodos HTTP são suportados pelo servidor. Se você estiver criando um aplicativo da Web e precisar determinar quais ações são suportadas por um serviço da Web , esse método HTTP é crucial para você. O aplicativo envia uma solicitação de opções ao serviço perguntando quais métodos estão disponíveis para um recurso específico. Isso ajuda seu aplicativo a se adaptar aos recursos dos serviços e saber que tipo de solicitações ele pode enviar a ele. Esses eram todos os métodos HTTP, mas são conceitos mais importantes a serem entendidos aqui. A seguir, vamos ver como podemos classificar um método HTTP. Quando se trata desses verbos HTTP, eles podem ser amplamente categorizados em. Em primeiro lugar, os métodos seguros são dos, métodos HTTP projetados para não ter impacto significativo nos recursos que visam. Em outras palavras, quando um método seguro é usado, ele não deve causar alterações ou efeitos colaterais no servidor em relação ao próprio recurso. E os seguintes métodos HTTP são considerados seguros. Get it não deve alterar o estado do recurso ou da API do servidor apenas para recuperação de dados Além disso, ele recupera metadados sem transferir todo o conteúdo, tornando-o novamente seguro Também temos métodos HTTP inseguros. Em contraste, esses métodos ou HTTP podem potencialmente levar a mudanças no estado do recurso ou do servidor. Eles não são seguros no sentido de que podem ter efeitos colaterais, como criação, modificação ou exclusão de recursos Os métodos HTTP a seguir são considerados inseguros. Não é considerado seguro porque geralmente leva à criação de um novo recurso ou à modificação de um existente , modifica ou cria recursos diretamente e, portanto, não é um método seguro Excluir, isso leva à remoção do recurso especificado, tornando-o inerentemente inseguro Por fim, o batch, embora seja mais direcionado do que post ou put, ele ainda pode alterar os dados dos recursos, tornando-o um método inseguro Vamos entrar agora no termo muito importante da potência do item No contexto dos métodos HTTP, potência do item se refere à propriedade de uma operação Estamos realizando a mesma ação várias vezes com o mesmo efeito de executá-la uma vez. Isso significa que, se você enviar uma solicitação potente de item várias vezes, esse estado do sistema e o recurso com o qual ele interage devem permanecer inalterados após a Vamos dar uma olhada em alguns exemplos de métodos HTTP potentes de itens que usam o método get É um item potente quando você recupera informações com uma solicitação GET Fazer a mesma solicitação repetidamente não deve alterar o estado do servidor ou do recurso que você está buscando O método put também é potente para itens Se você usar os dois para atualizar um recurso com determinados dados, enviar a mesma solicitação, mas várias vezes, resultará no recurso contendo os mesmos dados todas as vezes Por fim, temos as folhas. Aqui. É um método potente de itens porque se você solicitar a exclusão de um recurso usando o lead, enviar as solicitações repetidamente não mudará o fato de o recurso ter sido Em contraste com os métodos potentes do item, os não iônicos, tanto nos métodos quanto nos, têm resultados diferentes quando repetidos Por exemplo, o método post é conhecido como potente para itens e solicitações repetidas de publicação para criar um recurso podem levar à criação de vários recursos idênticos Cada solicitação resulta na adição de um novo recurso. Normalmente, a solicitação de patch também não é potente para o item. repetição de uma solicitação de patch pode atualizar um recurso diferente a cada vez se as alterações forem incrementais ou dependerem do estado atual do Vamos ver agora por que a potência do item é importante. Em primeiro lugar, métodos potentes de itens contribuem para a resiliência do sistema Em cenários em que problemas de rede, tempos limite ou falhas de comunicação por item, ou falhas de comunicação por operações potentes podem ser repetidas com segurança sem causar efeitos colaterais indesejados A potência do item também está intimamente relacionada ao armazenamento em cache. Quando respondem a uma solicitação potente de um item, essas solicitações de subsequência em cache podem ser atendidas com dinheiro, reduzindo a carga no servidor e melhorando o desempenho Em resumo, métodos potentes de itens, comportamento previsível, desenvolvedores e usuários podem confiar no fato de que a repetição de uma solicitação não resultará em resultados diferentes ou mudanças inesperadas no estado do sistema Por fim, a potência do item simplifica o tratamento de erros. Quando uma solicitação falha ou é interrompida, tentamos ela introduz inconsistências ou Em geral, ao projetar APIs, é essencial escolher os métodos HTTP apropriados para diferentes operações e documentar potente de seus itens Isso ajuda clientes e desenvolvedores como você a entender como solicitações devem ser tratadas e o que esperar quando interagem com a API Sem isso, eu realmente espero que alguns dos conceitos apresentados nesta palestra ajudem você no futuro e espero vê-lo nas próximas palestras 21. Parâmetros de consulta de cabeçalhos: Olá pessoal, e bem-vindo de volta ao discurso sobre APIs. Nesta palestra, daremos uma olhada cabeçalhos e parâmetros da consulta Exploraremos o papel fundamental que eles têm nas solicitações de API, como são usadas e as melhores práticas para aproveitá-las de forma eficaz. Começando pelo que são, os cabeçalhos HTTP são dados correspondentes incluídos nas solicitações e respostas da API Eles transmitem informações sobre a solicitação, como o tipo de conteúdo, as credenciais de autenticação ou o idioma preferido Os parâmetros de consulta, por outro lado, são pares de valores-chave adicionados ao final do caminho de um URL, separados por pontos de interrogação e e comercial Eles fornecem informações adicionais à API sobre a solicitação, normalmente para fins de filtragem, classificação ou paginação Passando para os cabeçalhos Nas solicitações de API, eles desempenham um papel muito importante por vários motivos Em primeiro lugar, temos autorização de autenticação. Os cabeçalhos geralmente contêm tokens ou credenciais necessários para autenticar o cliente com a API Como um exemplo concreto, aqui você pode pensar no O do protocolo de segurança. O token do portador que você usa lá para se autenticar será armazenado em um cabeçalho do token Em seguida, temos a negociação de conteúdo. Os cabeçalhos de aceitação e tipo de conteúdo permitem que os clientes especifiquem o formato de dados que podem aceitar ou enviar, como cabeçalhos Json ou X ML, como e comportamento de cache de controle Eg , para melhorar o desempenho As APIs podem usar cabeçalhos como limite de taxa X e limite de taxa X restante para impor limites de taxa às Temos uma palestra inteira dedicada à limitação de taxa em APIs neste curso, você também pode conferir isso. Seguindo em frente. Cabeçalhos como aceitar idioma especificam o idioma preferido conteúdo da resposta que você obterá da API Quando se trata de parâmetros de consulta em solicitações de API, eles fornecem opções valiosas de personalização para solicitações de API. Temos APIs de filtragem que geralmente permitem que os clientes filtrem dados especificando parâmetros de consulta, como sinal de pergunta, palavra-chave filter equals para especificando parâmetros de consulta, como sinal de pergunta, palavra-chave filter equals Os clientes também podem classificar as respostas da API usando parâmetros de consulta, como classificação de sinal de interrogação igual a campo ou ordem de sinal de interrogação igual a crescente Parâmetros de consulta, como ponto de interrogação, página e ponto de interrogação por página, permitem o acesso paginado a grandes As APIs podem oferecer suporte à pesquisa de texto completo sem parâmetros de consulta, como perguntas Q iguais ao termo de pesquisa. Quando falamos sobre as melhores práticas para cabeçalhos e parâmetros de consulta, temos algumas A primeira coisa que eu sugiro que você faça é sempre proteger a autenticação, os cabeçalhos e as credenciais Use tokens de autenticação, tempos de vida curtos e práticas seguras de armazenamento de tokens Mantenha a consistência no uso de cabeçalhos e nomes de parâmetros de consulta em sua API, endpoints e documentação Valide e limpe a entrada do usuário, especialmente quando os parâmetros de consulta estão envolvidos Vulnerabilidades como a eSqul Injection fornecem documentação clara e abrangente sobre cabeçalhos e parâmetros de consulta suportados, incluindo seu uso, tipos de dados e Se a limitação de taxa for aplicada, comunique os limites de taxa e as cotas restantes usando cabeçalhos de resposta Considere o controle de versão da sua API para garantir a compatibilidade com versões anteriores e usar cabeçalhos específicos da versão ou parâmetros de consulta quando necessário Novamente, aqui temos uma palestra completa sobre versionamento de APIs, então você pode dar uma olhada Além disso, cabeçalhos e parâmetros de consulta são os alicerces das solicitações de API permitindo que os clientes se comuniquem de forma eficaz com APIs enquanto personalizam suas interações Compreender sua função, seu uso adequado e as melhores práticas é essencial para desenvolvedores que buscam aproveitar todo o potencial das APIs em seus aplicativos Obrigado, Chris, por ficar comigo até o final desta palestra Eu realmente espero que você tenha conseguido algo com isso. E nos vemos na próxima. 22. Especificação OpenAPI: Olá pessoal, bem-vindos de volta a este tutorial de especificação de API aberta, onde entendemos como podemos documentar melhor nossas APIs Rest da web Nesta palestra, falaremos sobre o que exatamente é uma especificação de API aberta Essa especificação de API aberta foi chamada especificação Swagger antes de ser, é um formato de descrição de API para APIs restantes É igualmente adequado para projetar novas APIs antes de implementá-las e também para documentar suas APIs existentes para que os usuários possam entender mais facilmente como podem fazer chamadas para recuperar recursos e dados em geral API aberta permite que você descreva toda a sua API, incluindo os endpoints disponíveis, as operações nos formatos de solicitação e resposta que você pode receber suporte, métodos de autenticação, contextos de suporte e outras informações e A especificação da API aberta passou por várias versões desde o lançamento original A plataforma on-line do Sweater hub que usaremos neste tutorial atualmente suporta as três versões da Open API, que é a mais recente, mas também suporta as duas versões em um mas também suporta as duas versões nível mais concreto, falando agora, esse arquivo Open API que vamos criar na linguagem Yamo, veremos isso em apenas um Ele permite que você descreva toda a sua API, incluindo os endpoints disponíveis Por exemplo, aqui temos usuários e operações em cada ponto final. Então, esses são os métodos HTTP sobre os quais falamos na última palestra. Por exemplo, nos usuários finais, podemos ter documentado um método get que obteria a lista de usuários e o método post que criaria um novo usuário. Também permite descrever os parâmetros de operação, entrada e saída para cada operação. Por exemplo, se você quiser obter as informações sobre um usuário específico, você pode fornecer a ele um parâmetro, inserir como um ID, e ele recuperará as informações sobre esse usuário específico Também permite documentar os métodos de autenticação dessa API, caso existam Também permite documentar as informações de contato e os termos de uso da licença. Como veremos quando começarmos a plataforma on-line, sweerhup, veremos exatamente a sintaxe cada parte da documentação que podemos escrever sobre nossa Essas especificações de API sobre as quais falamos podem ser escritas nas linguagens Yamo ou Jason Esse formato é fácil de aprender e legível tanto para humanos quanto para máquinas Falaremos sobre essas duas coisas nas próximas palestras. Obrigado por ficar comigo até o final deste tutorial e estou ansioso para ver vocês no próximo 23. Visão geral do SwaggerHub: Olá pessoal e bem-vindos de volta a este tutorial de especificação de API aberta. Nesta seção, veremos como podemos usar a ferramenta Swagger Hub e aqueles que entendem o que ela é Mais especificamente. Nesta palestra, discutiremos a definição da ferramenta Swagger hop e uma visão geral dessa plataforma on-line começando com a definição dela Swagger Hub é uma plataforma que está disponível on-line e ajuda você a desenvolver sua própria API, seja ela pública para seu uso pessoal ou interna e privada para sua empresa Ele faz isso ajudando a desenvolver sua API, documentando-a em detalhes O princípio em que o Swagger Hub se baseia fortemente é o princípio do design, primeiro código depois, como você verá em breve Com o Swagger Hub, você começa pensando em como será a aparência da sua API Além disso, definindo seus recursos, operações e modelos de dados. Somente quando todo o design da sua API estiver concluído e você tiver uma estrutura clara para ela, você poderá iniciar a implementação real da lógica de negócios dela. Agora, as definições dessa API que você escreve são salvas na nuvem e também podem ser sincronizadas com sistemas de controle de versão externos, como Github O que torna muito mais fácil colaborar com sua equipe e também manter mais versões quando ela ganha força e começa a evoluir Como você pode ver aqui, eu tenho a página do Swagger Swagger Hub aberta no meu navegador Chrome apenas para dar uma olhada rápida em segundo plano enquanto eu explico para vocês para que essa ferramenta é As ferramentas Swagger Hub integram as ferramentas Swagger para torná-las mais conhecidas e comumente usadas torná-las mais Ele suporta o código En do editor de interface do usuário e também os dados válidos em sua plataforma colaborativa on-line que examinaremos em alguns instantes A sintaxe para descrever essas APIs na ferramenta Swagger Hoop é a API Swagger Open. Como você provavelmente esperava, sendo o formato padrão das definições de API, usaremos Y L para escrever a estrutura de sua API no discurso essas APIs na ferramenta Swagger Hoop é a API Swagger Open. Como você provavelmente esperava, sendo o formato padrão das definições de API, usaremos Y L para escrever a estrutura de sua API no discurso em geral. É o idioma escolhido para escrever nessa arrogância . No entanto, você pode colar no editor o texto Json, se é com isso que você se sente mais confortável e ele sabe como analisá-lo e reconhecê-lo Mas depois de salvar o trabalho realizado, o Json que você escreveu também será convertido em YAML. Agora, é claro, a plataforma swagger hop que estou apresentando a você neste tutorial está disponível on-line e também pode ser usada gratuitamente por 14 dias Agora vamos dar uma visão geral da plataforma. Como você pode ver aqui, estou na casa do meu aplicativo Swegerhup. No meu navegador, você primeiro nota o painel lateral na parte esquerda da tela. E começa com a página my hub que lista todas as APIs às quais você tem acesso. Eles podem ser criados por você mesmo ou por aqueles em que você foi convidado a colaborar por outras pessoas Por enquanto, tenho apenas uma loja própria que criei usando os animais de estimação em um modelo. Portanto, é algo bem básico que vamos dar uma olhada em um momento. Você também pode pesquisar uma API no painel lateral do hub swagger do hub swagger usando essa opção de Essa é uma maneira de você ver muitas APIs públicas excelentes desenvolvidas pelos usuários do Swagger Hub e isso o ajudará muito, especialmente se você está apenas começando a documentar sua Você pode se inspirar na estrutura da API deles ou simplesmente dar uma olhada rápida em algumas das sintaxes que eles usam Agora, ao clicar em uma API aleatória a partir daqui, vou selecionar essa aleatória, você notará. Que você obterá esta página com uma visualização dividida. Na parte esquerda, você verá o código Y AML da definição de API aberta Na parte direita, a documentação gerada em um belo estilo de referência. É claro que você pode redimensionar esses painéis a partir desta barra lateral aqui Outra observação aqui seria que o Swegerhb permite testar essas chamadas de API diretamente no navegador Mas vou mudar para o modelo de petição para que cada um seja mais representativo do que eu queria mostrar a vocês Aqui temos um modelo de pet shop, por exemplo. Podemos usar a operação get para obter um usuário. Depois de clicar em Testar, você pode pesquisar um nome de usuário que precisa ser buscado Ele também redireciona você para o usuário um para teste. Se escrevermos um para o usuário aqui e clicarmos em Executar, obteremos as respostas. A resposta do servidor tinha um código de 200, o que é bom, o que significa que nossa solicitação acabou bem. E este é o corpo da resposta que obviamente tem o ID do usuário, o nome de usuário que é uma string, um nome que é uma string, sobrenome que é uma string, e-mail, senha, telefone e dados do usuário. Obviamente, essas são strings codificadas, mas no caso de realmente fazer uma solicitação do Postman para sua API e realmente ter em seu banco de dados usuários reais, você verá valores específicos para esses usuários aqui Além disso, também temos alguns cabeçalhos de resposta. A duração da solicitação, quanto tempo demorou até nossa resposta do servidor. Além disso, você detalhou aqui as respostas que você pode obter com a descrição do código e os links. Em primeiro lugar, temos o código 200, que é a operação bem-sucedida , como descrição. E também fornece um exemplo do valor que você receberá se a solicitação que você fez for bem-sucedida e a resposta obtida for valiosa. Mas você também pode fornecer outro usuário que não esteja disponível no banco de dados. Nesse caso, você terminará com um código de erro de quatro, quatro ou 400. Além disso, o painel de navegação no lado esquerdo tem a função de mostrar a lista de operações e modelos de dados que estão disponíveis nessa API aberta. Além disso, ao clicar neles, você será automaticamente direcionado para essa parte do script YAML. Por exemplo, se clicarmos no método HTTP que acabei de descrever anteriormente, você verá que ele nos levou automaticamente à parte do código Amo em que está descrito para que seja exibido de forma bonita nessa visualização de estilo de referência Agora, alguns outros botões disponíveis aqui seriam os do lado esquerdo da tela O que disponibiliza para você ocultar a navegação, que é esse painel de navegação esquerdo acabei de falar. Esconda o editor, que é obviamente a navegação e também o código Amel E você também pode ocultar a interface do usuário, que é o documento de estilo de referência na parte direita da tela. Subindo um pouco, teremos uma informação rápida sobre nossa descrição da Open API aqui, onde temos alguns detalhes, algumas integrações e o proprietário criado por less safe e outros detalhes bonitos como esses Obviamente, você pode abrir sua API, renomeá-la ou compará-la e mesclá-la Não vamos entrar nisso agora, mas vamos entrar na versão dele. Se clicarmos nesse botão para baixo, você verá que tem algumas opções aqui que estão disponíveis para sua API. Você pode tornar sua API privada, o que devo dizer que você só pode fazer se tiver o plano premium vinculado à sua conta. Depois, você pode publicar sua API, que é um botão muito importante. Depois de escrever sua especificação de API, você poderá excluir essa versão. Além disso, você pode adicionar uma nova versão caso sua API esteja envolvida e você queira desenvolver uma versão totalmente nova para ela. Agora você pode ver a documentação aqui em outra página. que basicamente pega o documento de estilo de referência e o mostra em uma página inteira para você ver de uma forma mais descontraída. Além disso, você pode clicar nas opções da API onde você pode editar seu push do Github e também redefinir as alterações Você pode desativar as notificações, compartilhar e colaborar nessa API Por fim, há o botão Exportar, que apresenta diferentes métodos baixar sua API, seja no Yama ou no Jason, alguma documentação, o stub do servidor e também o e também Na próxima palestra, examinaremos mais de perto uma API aberta e seu código Y AML correspondente para aprender como podemos criar uma documentação para sua própria API usando essa Obrigado por ficarem comigo até o final desta palestra, e eu realmente espero ver vocês na próxima 24. Informação, servidor e tags: Olá pessoal, bem-vindos de volta a este tutorial aberto de especificação de API, onde falamos sobre a plataforma online Swagger Hub que você pode usar para documentar sua API em detalhes Nesta palestra, discutiremos os servidores de informações e as partes de texto do nosso Yamoscript que usadas para criar a documentação do Swagger para do Swagger Como afirmei na palestra anterior, essa parte preta esquerda é o editor Escrevemos o script Yaml que é usado para renderizar a interface de referência em que a API e seus endpoints estão incluídos Cada definição de API, como você pode ver, começa com a versão aberta da API, que no caso da API , ou seja, o modelo padrão de pet shop que eles fornecem na plataforma para você começar e ter uma boa ideia dos recursos que eles podem oferecer com a plataforma é três. É assim que o script GM começa ao escrever uma especificação de API aberta A próxima seção se chama info e contém os dados do método sobre sua API Esse metodado contém informações sobre a API, título, descrição, versão e assim por diante Essa seção de informações também pode conter informações de contato , nome da licença, URL e outros detalhes. Como você pode ver no nosso caso, ele tem a descrição de, esta é uma simples loja de animais, um simples servidor de pet shop. E você pode descobrir mais sobre swagger, que podemos ver que é renderizado logo abaixo do título Então, a versão da nossa API é bastante óbvia. Esse é um dado que é renderizado nesta caixa cinza aqui Então temos o título, The Swagger Pet Store, e depois alguns Termos de Serviço, que estão aqui E eles também especificam o link para redirecionar para algum contato, que é o contato dos desenvolvedores aqui mesmo, que é um e-mail E então, algumas informações sobre a licença e o URL para o Apache fazer isso são bastante autoexplicativas para a primeira parte da documentação da API Em seguida, como você pode ver, precisamos definir o endereço do servidor da API e a URL base para as chamadas de API que faremos adicionalmente. Essa seção do servidor também pode ter uma descrição. Agora, suponha que nossa API esteja localizada em https://mypiample.com Em seguida, ele pode ser descrito como a tag do servidor, depois o URL, como você pode ver na linha 19, e o caminho que acabei de dizer de forma mais concreta No caso deste modelo de loja de animais de estimação, você pode ver que a descrição é a API do hub Swagger E então ele te dá o URL, que é o Swagger Hub.com, meu nome, loja de roupas, loja de roupas E você pode ver que também pode selecionar este como seu servidor principal e ele também está disponível aqui. A próxima seção, logo antes de entrarmos no caminho um, é a seção Te. O que isso faz é basicamente atribuir uma lista de tags a cada operação de API que você tem em sua estrutura. As operações técnicas podem ser tratadas forma diferente por ferramentas e bibliotecas No nosso caso, o Swagger UI usa esses textos que você fornece para agrupar as operações exibidas dessa Ter um design mais elegante e organizado para seus endpoints Opcionalmente, aqui, você também pode especificar uma tecnologia de documentação externa para cada uma de suas tags usando a seção de texto global no nível raiz, que está aqui na Os nomes técnicos aqui devem corresponder aos usados em todas as suas operações. É assim que o Swaggerhub é capaz de mapear cada método HTTP para sua tecnologia correspondente e mostrá-los Como você pode ver na tela aqui, temos o agrupamento de animais de estimação, o agrupamento de lojas e o agrupamento de usuários As operações são, na verdade, como veremos na próxima aula, os métodos HTTP que são feitos em cada uma dessas operações específicas. Por exemplo, dispostos aqui, você pode ver que ele tem a seção de tags do caminho e sabe que a operação de postagem do caminho estará no grupo pat Agora, a ordem das tags na seção de texto global também controla a classificação padrão no SwegerUI Como você pode ver, pet é a primeira tag, store é a segunda e o usuário é a última nota aqui de que é possível usar uma tag em uma operação mesmo que ela não esteja definida no nível raiz. E também aparecerá muito bem, como você pode ver aqui. Mais concretamente, em nosso exemplo, no nível raiz do texto, temos o primeiro que é animal de estimação E a descrição, tudo sobre seus animais de estimação que é mostrado ao lado do título da tag. Além disso, você tem essa descrição que é mostrada na parte direita da tag. Isso é descobrir mais. E você também pode fornecer o URL que é mostrado aqui. Foi sobre isso com a primeira palestra da ferramenta Swegerhub sobre servidores de informações Na próxima palestra, discutiremos caminhos e operações que estão sendo feitos nesse script Yama que , além disso exibidos na renderização da interface de usuário da documentação da API Seger Obrigado por continuarem comigo até o final deste tutorial, e eu realmente espero ver vocês no próximo 25. Caminhos e suas operações: Olá pessoal, bem-vindos de volta a esta especificação de API aberta do Trio, onde aprendemos mais sobre a plataforma Swegerharb e como podemos documentar melhor nossas APIs Nesta palestra, discutiremos caminhos e operações na plataforma Swegerharp Mais especificamente, a sintaxe deles no documento Yama para que sejam renderizados Como você pode ver na parte direita da tela aqui, em termos de API aberta, em termos de API aberta caminhos são os recursos também conhecidos como endpoints que uma determinada interface de programação de aplicativos expõe Isso pode ser, por exemplo, uma barra de informações de usuário ou ID As operações são os métodos HTTP disponibilizados dentro de seus caminhos que são usados para manipular esses caminhos, como get, post ou delete Para cada caminho específico, podemos articular métodos HTTP ou, como o nome deles está aqui, operações que estão disponíveis para esse caminho Por exemplo, aqui temos a palavra-chave paths e, em seguida, temos o path path. E então temos várias operações. Por exemplo, os caminhos e operações da API put e post são definidos na seção de caminho global da sua especificação de API. No caso desse script aqui, está na linha 34. Todos os caminhos que encontramos aqui são relativos à URL do servidor da API. O URL completo da solicitação tem a sintaxe do URL do servidor. E então, o caminho que você vê aqui, os servidores globais sobre os quais falamos na última palestra, também pode ser substituído tanto no nível do caminho quanto no nível da operação Os caminhos podem ter um resumo opcional mais curto e uma descrição mais longa para fins de documentação. Esses campos estão novamente disponíveis no documento Yama, especificamente para cada um deles. Como você pode ver aqui no caminho da tag, temos o resumo, adicione o novo caminho à loja. Além disso, temos a descrição da resposta, 45 entradas inválidas Essas informações aqui devem ser relevantes para todas as operações nesse caminho A descrição pode ter várias linhas , pois pode ser mais longa e suporta a marcação de uma e suporta a marcação de marca comum para a representação do texto Agora, no que diz respeito à modelagem, você pode usar colchetes para marcar partes de um URL como parâmetros de caminho, mas também pode usar a tag de parâmetros, como você pode ver Em seguida, basta especificar vários recursos sobre esse parâmetro para cada um. Como eu disse antes, você pode definir operações. Portanto, métodos HTTP que podem ser usados para acessar esse caminho e lê-lo, alterá-lo ou excluí-lo. Openapi three suporta as opções get, post, put page, delete head e trace. Um único caminho pode suportar várias operações. Por exemplo, faça com que os usuários obtenham uma lista de usuários e publique usuários para adicionar um novo usuário. Uma coisa a se prestar atenção aqui seria que a API aberta define uma operação exclusiva como uma combinação de um caminho e um método HTTP. Isso significa que dois métodos get ou dois métodos post para o mesmo caminho não são permitidos, mesmo que tenham parâmetros diferentes. Como os parâmetros não têm efeito aqui na característica de exclusividade. Cada operação da sua API também oferece suporte a alguns elementos opcionais para fins de documentação. Assim como os caminhos, eles têm um breve resumo e uma descrição mais longa do que uma operação faz. A descrição pode ser multilinha e também suporta a marca comum Eles também têm textos que são usados para agrupar operações logicamente, recursos ou qualquer outro qualificador, como você pode ver aqui Por exemplo, na linha 51, temos a etiqueta pat. Além disso, o atributo de documentos externos aqui é usado para referenciar um recurso externo que contém documentação adicional agora aberta Pi three suporta os parâmetros de operação P por meio de caminho, cabeçalhos de sequência de caracteres de consulta e cookies Você também pode definir o corpo da solicitação para operações que transmitem Td ao servidor, como post, put e patch. Os parâmetros da sequência de caracteres de consulta não devem ser incluídos nos caminhos. Eles devem ser definidos como parâmetros quadrados. Em vez disso, com o atributo de consulta que podemos ver aqui na linha 77. Para o parâmetro chamado status, temos o especificador de consulta Outra observação rápida e bastante óbvia aqui seria que é impossível ter vários caminhos que diferem apenas na string de consulta. Como a API aberta considera uma operação exclusiva, combinação de um caminho do método HTTP e parâmetros adicionais não torna a operação exclusiva. Outro atributo para operações humanas aqui é o ID da operação, que é uma string exclusiva opcional usada para identificar uma operação. Por exemplo, aqui temos o ID de operação de um caminho aqui para o método post do caminho do caminho. Se você decidir fornecer esses IDs, preste atenção ao fato de que eles devem ser exclusivos entre todas as operações descritas em sua API. Alguns geradores de código usam esse valor de atributo para nomear os métodos correspondentes no código Você também pode marcar operações específicas como obsoletas para indicar que elas devem ser transações fora de uso com a sintaxe de outro desses recursos que seria descontinuado e, em seguida, o valor total de true, a matriz global de servidores do início do script Amo sobre a qual falamos na última aula e que está presente na como obsoletas para indicar que elas devem ser transações fora de uso com a sintaxe de outro desses recursos que seria descontinuado e, em seguida, o valor total de true, a matriz global de servidores do início do script Amo sobre a qual falamos na última aula e que está presente na linha 16, pode ser substituído tanto no nível do caminho quanto no nível da operação Isso é útil se alguns endpoints usarem um servidor ou caminho base diferente do resto da sua API Esse pode ser o caso quando falamos sobre a operação de upload ou download de arquivos, ou talvez sobre um endpoint obsoleto, mas ainda funcional Foi sobre isso com a seção de caminhos e operações do nosso yamoscript do swagger hub Obrigado pessoal por ficarem comigo até o final deste tutorial Na próxima palestra, falaremos sobre esquemas. Estou realmente ansioso para ver vocês lá. 26. Esquemas para modelos de dados: Ajude pessoal e bem-vindos de volta a este tutorial aberto de especificação de API, onde entendemos como a plataforma Swagger up E como podemos escrever código Yama para escrever uma documentação melhor para nossa API com arrogância Nesta palestra, falaremos sobre esquemas e a seção de esquemas do seu script Como você pode ver aqui no modelo de loja de animais de estimação da documentação da API. Se você rolar até o final, temos tanto no script Yama quanto na interface do usuário E esses esquemas rápidos em C two que definem os modelos de dados que estão disponíveis no back-end do nosso banco de E esses modelos de dados são objetos que podem ser expostos e manipulados por meio dos endpoints de nossa API que documentamos aqui no open PI three e, portanto, no swagger A seção de esquema do script UR yao se refere aos modelos de modelo de dados que estão disponíveis, como eu disse, por meio dos endpoints Ur Os tipos de dados desses modelos são descritos usando um objeto de esquema Agora, ao descrever um objeto de esquema, você deve usar palavras-chave e termos padrão das alterações no esquema Começando com os tipos de dados que estão disponíveis nos objetos do esquema O tipo de dados do esquema é definido pela palavra-chave type. A sintaxe aqui seria, por exemplo, tipo e, em seguida, string ou qualquer tipo que seja Na API aberta, temos acesso aos seguintes tipos básicos. Temos string, número, número inteiro, matriz de ouro e objeto Por exemplo, aqui, a entidade do pedido tem a propriedade ID e o tipo de dados inteiros É bem simples. Esses tipos existem na maioria das linguagens de programação, embora possam não ter o mesmo nome que vemos aqui. Usando esses tipos, você pode descrever praticamente qualquer estrutura de dados com a qual possa lidar ao falar sobre o campo de um modelo de dados a partir do banco de dados e do banco de dados. Ao lidar com números, existem os atributos de mínimo e máximo que especificam o intervalo determinado campo do modelo pode assumir. Além disso, o comprimento da string pode ser restrito usando os atributos de comprimento médio e comprimento máximo. Assim como o atributo type here, você pode usar o comprimento médio e o comprimento máximo. Isso deve limitar o comprimento da tela. O mesmo é válido para a linha Integra, caso você queira que os campos de seus modelos sejam um pouco restritos e queira informar aos usuários que ele o fará Além disso, quero usar sua API e ajudá-lo na documentação para dizer que, por exemplo, ao obter um ID de pedido, o pedido deve estar em 1-11 porque essas são as únicas entradas que você tem no banco de dados para que ele evite o erro 44 Agora, um tipo muito útil ao lidar com esquemas no Swagger Hub são Você pode usar a palavra-chave para especificar valores possíveis de um parâmetro de solicitação ou uma propriedade do modelo que não sejam as enumerações e os Essa API aberta é usada na plataforma Swagger Hub Vamos definir dicionários em que as chaves são cadeias de caracteres, caso você não saiba que esse dicionário, também conhecido como mapa, mapa de hash ou matriz associativa, hash ou matriz associativa, é um conjunto Para definir um dicionário para seu campo, você precisa usar o objeto de tipo, como você pode ver na linha 536, e a palavra-chave de propriedades adicionais para especificar o tipo de valores nos pares de valores-chave da palavra Junto com esses dicionários, Open API fornece várias palavras-chave que você pode usar nos esquemas combinados ao validar valor de um parâmetro Aqui, teríamos um que valida o valor em relação exatamente um dos subesquemas. Tudo isso valida o valor relação a todos os subesquemas e isso valida o valor em relação qualquer um ou mais dos Falando mais concretamente sobre nossos animais de estimação modelo de documentação da API que temos aqui Você pode ver que os esquemas, então os objetos pelos quais podemos fazer operações brutas com nossa API seriam o pedido, o pedido do seu animal de estimação, que tem um ID, que é um número inteiro, um ID do animal de estimação, uma quantidade, uma data de envio, que é um dia, um status que é, hum, como eu já falei sobre esse tipo antes, que pode ser colocado, aprovado E aqui está a sintaxe disso agora. Também podemos ter uma categoria. Também podemos ter um usuário que faz o pedido. Também podemos ter uma etiqueta. Também podemos ter um animal de estimação um esquema de categorias dentro dele. Temos um nome, URLs de fotos que podem pegar o usuário e dar a ele uma foto desse tapinha, caso ele queira marcar esse campo Temos um texto que contém o esquema técnico. E, por fim, temos a resposta da API documentada aqui. Como eu disse, a sintaxe do Amo aqui é bem simples. Temos os componentes, o nível raiz em destaque e, em seguida, os esquemas nele Você simplesmente escreve o nome do seu esquema, por exemplo. Temos a ordem, depois o tipo dela e, em seguida, as propriedades que são, como eu disse aqui, se você quiser dar uma olhada lado a lado e talvez mapeá-las com sua mente, você tem as propriedades de ID, que é um número inteiro Tem um formato de 64. mesmo vale para a quantidade de identificação do animal de estimação , mas a quantidade tem o formato 32. Agora temos a data de envio que tem o formato de uma data e hora e é do tipo string. Aqui, sugere-se ao usuário da API que seja diurno, mas na verdade é uma string. E também temos o status desse tipo string, ele tem uma descrição, como você pode ver, o status do pedido que está escrito aqui. Além disso, explica para que esse campo é usado. Temos a implementação do tipo de dados nele, que neste caso é o ano que pode receber valores colocados, aprovados ou entregues Por fim, temos um lingote que representa se o pedido foi concluído ou não pela loja Também podemos, como você pode ver aqui, especificar que o valor padrão para o campo, neste caso, seja falso. Isso é muito parecido com os próximos esquemas que temos aqui Esse foi o último componente do nosso script Amo que precisaremos conhecer para escrevermos um script Yam que se traduza em uma especificação de API usando também a plataforma Swegerhop Obrigado pessoal por ficarem comigo até o final deste tutorial Estou realmente ansioso para ver vocês na próxima. 27. APIs REST.: Olá pessoal e bem-vindos de volta a este tutorial. Nesta palestra, vamos analisar as APIs de repouso, o que elas são, como elas funcionam e se obviamente são úteis. E também vamos entender a diferença entre uma API simples e a API restante. Então, começando quando se fala sobre APIs restantes, a palavra restante vem da Representational State Transfer, que é um estilo arquitetônico de software que usa um subconjunto de HTTP. É comumente usado para criar aplicativos interativos que usam serviços da Web. serviço Web que segue essas diretrizes é chamado RESTful. Esse serviço web deve fornecer seus recursos da Web em uma representação textual e permitir que eles sejam vermelhos e modificados com um protocolo sem estado e o conjunto predefinido de operações. Essa abordagem permite a interoperabilidade entre os sistemas de computador na internet que fornecem esses serviços. Neste tutorial, vamos trabalhar as APIs de descanso de semana com mais precisão documentando-as em detalhes. Como esta é uma regra de prática muito boa para nossa API seja clara e muito bem estruturada. Obrigado pessoal por ficarem comigo até o final desta palestra. E eu realmente estou ansioso para ver vocês no próximo onde vamos discutir os métodos de solicitação HTTP e os códigos de retorno que estão disponíveis ao lidar com APIs restantes. 28. APIs SOAP: Pessoal, bem-vindos de volta a este tutorial. Nesta palestra, vamos discutir APIs de sabão. Como já vimos algumas coisas sobre APIs restantes. Npr também vai fazer uma comparação em uma palestra posterior entre esses tipos de APIs antes de morrer Vamos ver algumas coisas específicas sobre APIs de sabão. O que eles são quando são usados. Então você sabe qual API você pode escolher ao tentar implementar uma das suas. Então, antes de tudo, soap representa uma ferramenta que faz com que sistemas usando diferentes sistemas operacionais se comuniquem por meio de solicitações HTTP. O uso exclusivo de pacotes XML de APIs baseadas em dados é feito para criar, recuperar, atualizar e excluir registros. Basicamente, execute operações brutas neles. Assim como as APIs restantes são. Poucos exemplos de modelos de dados que podem ser manipulados. Pode ser usuário, alguns objetos gerais nas solicitações da API soap. Em seguida, sendo usado com todas as linguagens que suportam serviços da Web, como JavaScript ou Python, ou C Sharp para citar alguns. A principal vantagem dessas APIs é a flexibilidade que os desenvolvedores têm. Quando se trata da linguagem de programação. Você pode escrevê-los. Sua concretização é a criação de protocolos baseados na web, como HTTP, que já são compatíveis com todas as linguagens e sistemas operacionais. Além disso, o S no nome da célula Dove soap APIs significa simples. O protocolo soap só fornece a base simples para implementações complexas. O espaço é composto por cinco partes. O envelope é a primeira parte, que é a tag que especifica se um XML, esta é uma resposta de sabão, como eu disse antes, a maneira como as APIs de sabão estão se comunicando e a maneira como colocam suas a informação é verdadeira. Arquivo Xml, que é um farm Extensible Markup Language que tem suas próprias tags e é usado para transferir dados. Teremos uma palestra completa sobre o tipo de arquivo mais tarde. Agora, também temos a parte pesada de um protocolo soap, e este é realmente opcional. Em seguida, temos o corpo, que é a parte mais importante, é basicamente a maior parte da mensagem de sabão. Portanto, ele contém a maior parte das informações enviadas. E também, por último, temos o deck de falhas, que é o último componente das APIs de sabão entrar neste deck de ambos é colocado dentro da festa. O que ele morre especifica mensagens de erro que podem aparecer dentro dessa solicitação ou resposta. Agora, falando sobre mais algumas vantagens quando se trata do protocolo soap. Propriedades de neutralidade significa que funciona em uma ampla variedade de protocolos, de HTTP a SMTP. E também outra propriedade que constitui uma vantagem ao falar sobre APIs de sabão com sua extensibilidade. Então, obrigado por ficarem comigo até o final deste tutorial. Isso foi sobre a apresentação de APIs de sabão. Estou ansioso para ver vocês no próximo, onde vamos dar uma olhada em uma comparação entre APIs do Sul, APIs restantes. Além disso, podemos entender qual deles é melhor escolher dependendo da nossa situação atual e das nossas necessidades de implementação. 29. SOAP vs. REST: Olá pessoal e bem-vindos de volta a este tutorial. Nesta palestra, vamos analisar a comparação em APIs restantes e APIs de sabão para entender qual delas seria melhor para nós se quisermos começar a desenvolver nossa própria API. A principal diferença entre as APIs restantes seria que o soap é um protocolo e o resto é um estilo arquitetônico. Além disso, as APIs restantes usam vários padrões, como HTTP, Jason, URL, CSV e XML. Mesmo que o sinal de mudança seja preferido, você pode usar o que você está mais confortável. A API Soap é, por outro lado, baseia-se em grande parte no HTTP e somente XML para transferência de dados. A partir dessas diferenças entre eles. Há uma desvantagem, obviamente, ao lidar com APIs de sabão pelo fato de as solicitações estarem no mesmo XML. E dessa forma, eles são muito maiores do que nossa resposta JSON por si só. Desta forma, o sabão acabará usando muito mais largura de banda e depois descansará. O descanso é muito mais rápido e eficiente a esse respeito. Agora, em geral, devemos usar o resto quando não precisarmos um estado para ser mantido entre as chamadas de API. Para dar um exemplo de contador aqui, você pode pensar em um site de compras que precisa reter as informações de que você foi comprado. Em outras palavras, ao entrar na página, onde você paga por ela? Esse seria um caso em que a autoAPI seria melhor do que uma API restante, porque precisaria dessa data de menos carrinho para ser mantida na página de pagamento. Agora se tornou padronizado e também foi incorporado no tratamento de erros. APIs de descanso são muito mais fáceis de usar, leves e flexíveis. E todos esses motivos fazem com que ele tenha uma curva de aprendizado menor para novos desenvolvedores que estão apenas entrando na programação de API. As APIs restantes também têm padrões fáceis de entender, como Swagger, especificação OpenAPI. Esses padrões permitem documentar por pouco que você era um cara. Dessa forma, tornando muito mais fácil a adoção por novos programadores. Em conclusão, se você está pensando escolher o sabão ou descansar para o seu projeto, eu diria que, em última análise, se resume ao serviço web que você deseja implementar. Baseado em novos trabalhos oh, necessidades. Você tem que decidir com qual deles ir. Além disso. Esses pontos sobre a diferença entre APIs self e rest. Obrigado pessoal por continuarem comigo neste tutorial. E estou ansioso para ver vocês no próximo. 30. Json: Pessoal e bem-vindos de volta a este tutorial. Nesta palestra, vamos discutir arquivos de dados json, começando com o nome j sine vem de JavaScript. Notação de objeto. Mds são linguagem independente de linguagem, legível por humanos, usada por sua simplicidade. Nps também é mais comumente usado em aplicativos baseados na Web para trocar dados entre partes. Agora, as extensões de sinal G, obviamente n ponto JSON. Jason é um substituto fácil de usar para XML, ACTs mais leve e fácil de ler. Além disso, sendo mais leve, rápido, levamos a mudança da tocha da superfície para os clientes pode acabar sendo muito menor em tamanho. E é por isso que os EPs são a maneira preferida de comunicar dados na web mundial. Dessa perspectiva. Boas vantagens para o IG. Alguma linguagem gira em torno do fato de que é fácil para os seres humanos lerem e Dr. E D também é fácil para máquinas para bares e JSR de janeiro. Agora, ao falar sobre a estrutura de um arquivo g seno, ele me disse toda a sua estrutura. A primeira parte tem uma coleção de pares de valores de nome em vários idiomas. Isso é realizado como um objeto, registro, struct, dicionário ou tabela de hash. Além disso, pode ser uma chave ou uma matriz associativa. A segunda parte então delta g sin five pode ter, é uma lista ordenada de valores. E você pode associar isso na maioria dos idiomas. Trigo em uma lista vetorial de raios ou janela de sequência que, ao trocar dados entre o navegador e o servidor, os dados só podem ser decks e casten é texto. Dessa forma, podemos facilmente converter qualquer objeto JavaScript em JSON e enviar esse JSON para o servidor, o cliente. Agora, podemos trabalhar com os dados. São objetos JavaScript sem análise e traduções complicadas. Além disso, se você receber dados em formato adjacente, é um cliente do servidor. Você pode convertê-lo facilmente em um objeto JavaScript. Por isso, funciona muito bem ao contrário também. Então, foi sobre o qual os arquivos de dados JSON são usados em APIs para clientes para obter informações. Obrigado pessoal por ficarem comigo. 30 final deste tutorial e estou ansioso para vê-lo no próximo. 31. XML: Olá pessoal e bem-vindos de volta a este tutorial. Nesta palestra, vamos discutir arquivos XML, STR, uma escolha popular ao falar sobre a transmissão dados na Internet de servidores para clientes. E Pi ao quadrado. Então, começando com o nome, XML vem da Extensible Markup Language e desmarque qual deles define um conjunto de regras para codificar documentos em um formato fácil de entender por ambos os seres humanos e máquinas. O design do XML, o que é muito acento na simplicidade, generalidade, usar a construção em toda a Internet é um formato textual com forte suporte via código exclusivo. Embora o design do XML se concentre em documentos, a linguagem é amplamente utilizada para a representação de estruturas de dados arbitrárias, como as usadas em serviços da web. Todas as características o transformaram em um dos idiomas mais usados para trocar dados por solicitações na internet. Você pode estar perguntando qual é exatamente a facilidade em Mark em branco. Bem, markup são informações adicionadas a um documento que melhora Seu corpo de significado de certas maneiras, na medida em que identifica as partes e como elas se relacionam entre si. Mais especificamente, um cobertor Markov, que é um conjunto de símbolos que podem ser colocados no texto do documento para demarcar e rotular as partes desse documento. O Xml foi projetado para ser autodescritivo. Também se assemelha muito ao HTML. Se você olhar para a resposta do XML, a diferença entre os dois. A linguagem XML não tem tags predefinidas como o HTML faz H. Você viu se você está familiarizado com essa linguagem de marcação, detalhes, parágrafos que são cabeçalhos que são idade e, em seguida, um número de quão grande eles são e assim por diante. Mas ainda assim, a XAML não faz nada. É apenas uma maneira intuitiva, fácil e compreensível de colocar etiquetas de embalagem de informações que nomeiam estatisticamente alguém no software mais seco para enviar, receber, armazenar ou exiba o estado. Isso é feito com o código real escrito dentro dos endpoints de uma eventual API para a qual você pode fazer solicitações para recuperar os dados. Agora, existem duas características principais da linguagem XML que diferenciam e a tornam útil em uma variedade de situações. Epc extensível, como o nome sugere, o que significa que permite que você crie seus próprios decks dentro da batida. E esses decks são, claro, representativos para o namoro fornecem como você os faz. Se você tiver um usuário XML bem escrito entenderá, basta encontrar as informações que ele obteve do XML que você enviou. Ele carrega os dados independentemente da forma como serão mostrados por quem os recupera. De fato, o padrão social tornou-se público e aberto. Em conclusão, a razão pela qual o próprio XML bica e popular hoje em dia, Ele é a maneira que torna a abundância de sistemas com as linguagens de programação Grunt e sistemas operacionais uniformes para um único, simples e fácil de entender linguagem de marcação simples e fácil de entender que é muito flexível em termos de tags e contendo as informações que ninguém é sobre isso com os arquivos XML. Obrigado pessoal por ficarem comigo. Até o final deste tutorial. Estou ansioso para ver vocês no próximo. 32. XML vs. JSON: Olá, e seja bem-vindo de volta a este tutorial. Nesta palestra, vamos discutir diferentes Cs e também achamos que eles têm em comum sobre linguagens XML e JSON. Conversamos nas palestras anteriores sobre cada um deles, cada um de seus locais específicos, o que o JAR você pode contextar, eles podem ser usados. Mas agora, fazendo uma comparação entre eles, talvez você possa decidir facilmente qual deles é melhor para você em sua própria representação de API. Sbc, JSON e XML podem ser usados para que você receba dados de um servidor web ou para que você envie o cliente para um servidor web. Eles são basicamente apenas maneiras de colocar a data em que é comunicada entre os web parties quando se trata de coisas que eles têm em comum. Ambos são muito estruturados de forma hierárquica. Ou seja, é claro, que eles têm essas tags no caso de chaves XML e curly no caso de JSON que representam valores dentro dos valores. Então eles são muito estruturados, ambos também são legíveis por humanos, também conhecidos como autodescritivos. Também. Outra coisa que podemos observar em ambos é que eles podem ser buscados com uma solicitação HTTP, o que também os torna úteis ao falar sobre APIs e comunicação pela Internet. Eles também, é claro, podem ser analisados e usados por muitas linguagens de programação. Mas aqui vem a diferença média entre essas duas linguagens de marcação. Isso é obviamente estar morto para eczema tem que ser analisado, escrito analisador XML real. Embora o JSON possa ser analisado por uma função JavaScript padrão, preciso disso analisado pela função JavaScript padrão? Ele é analisado em um objeto JavaScript pronto para usar. E como você pode concluir a partir disso, essa é uma grande vantagem para o JSON é que é muito mais fácil transcrever para o código real quando você está trabalhando com ele e está recebendo portão. eczema é muito mais difícil analisar o JSON nesse sentido. Agora, outras diferenças importantes entre esses dois podem ser que os objetos JSON que são analisados com o JavaScript sempre tenham algum tipo de tipos, seja se for uma string, uma matriz numérica de OR Booleano, se os dados XML são sem tipo e isso deve ser string. Também o XML suporta comentários, enquanto o padrão G não suporta nenhum tipo de comentário sobre você. Se você talvez ler alguns arquivos JSON, você pensou que não havia absolutamente nenhum comentário lá. Embora o JSON seja suportado pela maioria dos navegadores hoje em dia, análise XML entre navegadores pode ser complicada e você pode ter alguns problemas ao lidar com os navegadores especiais. Eu pessoalmente nunca encontrei isso, mas aparentemente é possível. E a última diferença que temos aqui seria que o JSON é menos seguro que um XML. E esse é provavelmente o ponto mais forte que você olharia, é tentar escolher XML em vez de adjacente. Mas, novamente, g seno, é muito mais fácil de ser analisado. E também é a maneira ideal de transmitir dados na web ao chegar, especialmente para. Enquanto state é o motivo pelo qual o XML também é usado com APIs de sabão. Personalidade Eu prefiro mais o JSON, mas dependendo do que você está tentando criar, que tipo de API humana criar. Acho que é melhor você escolher por si mesmo e para suas necessidades entre esses dois idiomas. Então, obrigado por ficarem comigo até o final desta palestra. E eu realmente estou ansioso para ver vocês no próximo. 33. Como podemos chamar uma API: Olá pessoal e bem-vindos de volta a este curso de API. Nesta seção, abordaremos o aspecto mais prático das APIs. Ou seja, como você pode realmente fazer solicitações para APIs específicas e obter informações delas na forma de algumas respostas, conforme declarado em palestras anteriores Ao lidar com APIs, é como lidar com um site Por exemplo, quando você entra no Facebook, você basicamente clica em um link. Quando você clica nesse link, o site é aberto. O que realmente acontece quando você clica nele é que você faz uma solicitação aos servidores do Facebook. O site que você recebe diante de seus olhos é a resposta que você recebe de volta. Agora é a mesma coisa quando você chama um endpoint de API. O endpoint de um EPA serve apenas como um link. Quando você liga, significa que você faz uma solicitação para, é como se você clicasse em um site. A resposta que você recebe é na forma de uma página da web ao entrar no Facebook ou na forma de uma resposta quando você faz uma solicitação ao endpoint de uma API Mas é praticamente a mesma coisa. Sem dizer isso, discutiremos neste curso duas maneiras pelas quais você pode realmente fazer solicitações dois endpoints de API diferentes Agora, o primeiro é através do curl e o segundo é através do postma Esses são dois programas que permitem, obviamente, fazer essas solicitações, da mesma forma que você faria em um navegador, digamos URL. Agora, o curl vem instalado por padrão se você estiver usando um Mac OS ou se estiver usando um Windows Ten Se você estiver usando um Bunto ou uma janela anterior à versão dez, mas tiver o Git para Windows instalado ou para um Buntu instalado O curl já foi baixado novamente do Github e você pode chamá-lo, como você verá, que eu farei na próxima palestra Ao tentar fazer uma solicitação para um site, novamente, você nem tem o Git em sua máquina e está usando o Windows anterior a dez ou um pacote, pode usar o gerenciador de pacotes e essa é a maneira mais simples de fazer Por exemplo, você pode baixar chocolate e depois executar o Choco install curl Ou, novamente, outros gerenciadores de pacotes também estão bem. Mas se você não quiser fazer isso por meio de um gerenciador de pacotes, você também pode baixar o Curl na página inicial do Curl Você pode ir para Curl that SE, depois há um botão de download e você pode baixar o arquivo curl arquivado e depois instalá-lo Nas próximas palestras, vamos pegar uma API pública e fazer algumas solicitações com Carl e Só para ver exatamente como podemos usar não apenas os verbos HTTP e acessar os endpoints da API e vê-los na prática, mas também todas as noções sobre as quais falamos teoricamente até Se tudo isso parece interessante para você, eu realmente espero vê-lo nas próximas palestras Agradeço muito por ficar comigo até o final desta 34. Chamadas com onda: Olá pessoal e bem-vindos de volta ao curso de API. Nesta palestra, faremos nossa primeira solicitação de API usando Carl Eu tenho aqui na tela o site da Nasa. E a Nasa está, na verdade fornecendo alguns endpoints de API para diferentes desenvolvedores Você pode se perguntar: por que gostaria de acessar os dados por meio de um endpoint de uma API em vez de simplesmente inserir um link em sua URL e ver essas informações por si mesmo com imagens em um formato muito melhor, então elas apareceriam como a resposta de uma API, como você verá em breve A resposta para isso é porque, quando você usa uma API, geralmente a usa em seu código para obter informações de outras partes que estão fornecendo essas informações para você. E você não pode calculá-lo ou não deseja fazer isso. Você recupera essas informações em seu código fazendo essas solicitações que faremos somente com Carl e Postman para mostrar a vocês como elas são faremos somente com Carl e Postman para mostrar a vocês como elas Mas, como eu disse, eles seriam feitos a partir do seu código e talvez você ligasse o NSAPI para mostrar informações sobre o primeiro pouso na lua E você recuperaria essas informações da API e as mostraria em seu próprio site É para isso que servem as APIs. Agora, voltando ao nosso tutorial, eu tenho aqui a API, NASA.gov. E se você inserir essa URL em seu navegador, você será redirecionado para esta página, onde primeiro de tudo, você pode ver que precisa de Se você rolar um pouco e ver APIs diferentes, elas estão fornecendo endpoints diferentes Por exemplo, o banco de dados meteorológicos espaciais de notificações, conhecimentos e informações. Aqui, por exemplo, um ponto final é a ejeção de massa coronal Aqui você pode ver que, como argumento, você precisa da chave de API fornecida na seção após inserir o primeiro sobrenome e também o e-mail. Se você estiver realmente trabalhando em um aplicativo ou site que usará esse URL, melhor inseri-lo. Mas é opcional porque algumas pessoas só podem fazer isso para entender as APIs ou apenas recuperar algumas informações delas. Depois que eu mostrei isso, vemos claramente algumas etapas para fazer uma chamada de API. Em primeiro lugar, precisamos fornecer aqui nome e o sobrenome e depois o e-mail. Eu vou fazer isso muito rápido. Então, quando clicamos em inscrever-se, você pode ver que a chave de API que nos é fornecida é essa. Podemos muito bem copiá-lo. Agora você vê que isso também nos leva adiante com algumas instruções e nos diz que podemos começar a usar essa chave para fazer solicitações diferentes ao serviço da web. Precisamos simplesmente passar essa chave na URL ao fazer uma solicitação na web. E eles até mesmo um simples exemplo solicitam aqui. Agora, se copiarmos isso e adicionarmos curl na frente dele, podemos fazer uma solicitação ao endpoint da API da Nasa Como você pode ver, a parte é a foto astronômica do dia, por exemplo Esse é um deles. Você pode ver que ele também pode usar parâmetros diferentes, mas precisa da chave de API. Na verdade, copiamos esse endpoint de antes de ele ser fornecido por eles quando inserimos nossas Então, agora vamos ver como podemos realmente fazer a solicitação. Podemos ativar a linha de comando que eu abri no modo administrador, mas se você estiver no MacOS ou no Bundle, poderá abrir seu terminal E depois disso, depois de verificar se o curl está instalado, você pode digitar curl. E depois. Certo, o endpoint da API, mas também arquivado pela sua chave Ao clicar em Enter, você pode ver que obtemos algumas informações em nossa resposta aqui, e isso está no script do tipo Json E você pode ver que isso nos leva aos direitos autorais da foto, que é esse cara chamado Nick, acho que se pronuncia, depois a data da foto, quando foi tirada, e depois a explicação da foto. Também podemos obter outras coisas, como o título, o URL, que podemos copiar daqui, e acho que isso nos levará à imagem real. Você pode ver que esta é a imagem astronômica da data Agora, essa é uma maneira bem simples de acessar o endpoint de uma API Como eu disse, assim como você fez esse parâmetro de consulta da chave de API, você pode realmente digitar outra pergunta, marcar a data e depois igualar Em seguida, escreva uma data específica a partir da qual você deseja recuperar a imagem astronômica daquele dia ou uma matriz delas com a data de início e a data de término Então, é claro, o EPIK, como eu disse. E também alguns outros parâmetros de consulta, que você pode inserir sorrateiramente após conclusão desse endpoint, após o Era sobre isso. Como eu disse, geralmente há algumas etapas extras quando você está tentando usar uma API. Você pode adicionar alguns tokens que precisam ser trocados com você e com o servidor para o qual você está tentando fazer a solicitação Só para que o servidor garanta que você esteja tentando acessar as informações de seus direitos, assim como as chaves de API aqui. O processo de token é um pouco mais complicado e não vamos entrar nisso aqui, mas eu tenho outro curso que trata apenas do processo que lida com esses tokens dentro das APIs. Era sobre como você pode fazer uma solicitação simples com L em sua máquina pessoal. Mas na próxima palestra, também veremos como você pode fazer essa solicitação em fazer essa solicitação em um novo programa chamado Postman E se você está se perguntando, por que você quer fazer isso, é porque esse programa mostrará mais detalhes sobre sua solicitação e mais opções sobre ela. Como o verbo HTTP com o qual você deseja chamar sua API. Todas as informações serão formatadas com caixa de texto e serão muito mais fáceis de ler por você E também muitas outras opções que veremos na próxima palestra. Como eu disse, eu realmente espero que vocês tenham tirado algo útil desta palestra. Espero que você esteja um passo mais perto de chamar uma API em seu próprio aplicativo web. Ou ainda mais perto de entender exatamente como você pode manipular APIs, chamá-las e o que elas realmente são Muito obrigado por ficar comigo até o final desta palestra Estou realmente ansioso para ver vocês na próxima. 35. Ligações com Postman: Olá pessoal e bem-vindos de volta a este curso de API. Nesta palestra, vamos dar uma olhada em como exatamente podemos fazer solicitações para diferentes ABIs públicas usando a ferramenta Primeiro de tudo, você precisa baixar o Postman em sua máquina local atual Para fazer isso, você pode acessar seu navegador, digitar o nome do carteiro e clicar no sublink de download da postagem do primeiro link Em seguida, você será redirecionado para esta página onde podemos fazer o download Esse executável também pode ser baixado para MacOS ou Linux Não importa qual sistema operacional você está usando atualmente, pois ele funcionará para você. No entanto, agora você pode ver que o executável foi baixado Podemos ir em frente e abri-lo, e você pode ver que ele vai direto para a instalação. Agora ele vai abri-lo. Como você pode ver, assim mesmo, você tem a ferramenta em sua máquina local, você pode criar uma conta. Mas vou pular e ir direto para o aplicativo. Aqui você já tem um espaço de trabalho aberto, mas para facilitar o entendimento nesta parte correta, você pode adicionar uma nova guia na qual você cria uma solicitação E, como você pode ver, isso é muito mais orientado à criação de solicitações, servidores e à recuperação de suas respostas. Então, a instrução atual do CLD era. Agora você pode inserir a URL do último tutorial aqui. Como farei em apenas um momento. O que vamos fazer aqui é inserir essa solicitação e usaremos o HTTP get conforme quisermos para recuperar recursos do endpoint específico Se clicarmos em Enviar, você pode ver aqui que na parte inferior da solicitação da página está nossa resposta à solicitação que acabamos de enviar. Você pode ver aqui, em primeiro lugar, a rede e depois o status com o qual nossa resposta está chegando. É 200, o que significa que tudo bem, se você passar o mouse sobre ele, também poderá ver exatamente de onde vem esse status Se não for um padrão e você talvez não o tenha visto antes, você pode realmente ver uma explicação sobre isso aqui. Então, podemos ver em quanto tempo a resposta voltou e, em seguida, as diferentes partes dela, se você estiver interessado nessas coisas. E também o tamanho da resposta que obtivemos aqui, é o corpo que, é claro, pode ser cru e esse é o que vimos em nossa resposta atual no início da palestra anterior no CMD Também podemos ver uma prévia, podemos visualizar, mas o visualizador dessa solicitação não está realmente configurado no momento Mas, por padrão, está na guia bonita que formata todo o texto neste arquivo JS E, como eu disse, você pode ver que ele também é analisado e destacado em partes diferentes, o que é muito útil para vermos detalhes diferentes de nossa solicitação Aqui você pode ver que temos parâmetros de consulta diferentes que ele, por padrão, ao analisar o endpoint do qual estamos fazendo a solicitação está retirando Você pode ver que ele detectou nosso parâmetro APike e também o valor dele aqui Claro, você pode adicionar alguma descrição a ele. Também podemos adicionar parâmetros diferentes a partir daqui, em vez de, na verdade digitá-los na solicitação E isso pode ajudar a gerenciar o comprimento do endpoint, porque mesmo que o comprimento do endpoint seja maior aqui, podemos realmente cometer menos erros Como podemos ver, a chave e o valor são melhores. Agora, na parte da autorização, podemos deixar como estava. Esta é uma API pública em. A chave IP que recuperamos do site está diretamente no link Mas se usássemos um sistema de segurança tokenizado para acessar essa API, precisaríamos realmente usar os dois tokens ou qualquer protocolo que eles estejam usando ao tentar fazer uma solicitação real Então, aqui estão alguns cabeçalhos, o corpo e coisas diferentes assim Aqui nas configurações, temos diferentes configurações de métodos HTTP, mas isso não é tão importante. Esta é apenas uma prévia do que você pode fazer com o Postman e como criar uma solicitação com essa ferramenta Você também pode criar outra solicitação e também salvá-la E se você criar uma conta, todas essas solicitações serão salvas para você, caso você precise revisá-las novamente ou talvez copiá-las para o aplicativo atual em que está trabalhando. É sobre como você pode fazer a solicitação com o serviço de carteiro Muito obrigado, pessoal, por ficarem comigo até o final do tutorial Eu realmente espero que você tenha conseguido algo com isso. E se você tiver alguma dúvida sobre o processo de criação da solicitação de uma API, pode deixá-la aqui neste curso. E farei o meu melhor para responder a você em tempo hábil. Além disso, se você estiver interessado. Também tenho outro curso sobre o processo O que a maioria das APIs está usando atualmente e adiciona uma camada extra de segurança quando você está tentando fazer uma solicitação a elas. Você também pode conferir isso. Mas, por enquanto, muito obrigado. Como eu disse, estou ansioso para ver os caras nas próximas palestras e tutoriais