<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: tuliov1</title>
    <description>The latest articles on Forem by tuliov1 (@tuliopss).</description>
    <link>https://forem.com/tuliopss</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1325924%2Fbc109b31-8b5e-4e28-9fcc-7f676de25b44.jpeg</url>
      <title>Forem: tuliov1</title>
      <link>https://forem.com/tuliopss</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/tuliopss"/>
    <language>en</language>
    <item>
      <title>Integrando sua API com front React e Axios</title>
      <dc:creator>tuliov1</dc:creator>
      <pubDate>Sun, 09 Jun 2024 14:42:51 +0000</pubDate>
      <link>https://forem.com/tuliopss/como-integrar-sua-api-com-seu-frontend-cg8</link>
      <guid>https://forem.com/tuliopss/como-integrar-sua-api-com-seu-frontend-cg8</guid>
      <description>&lt;p&gt;Ao se desenvolver uma API, é ideal que os dados resultantes no lado do servidor dela sejam consumidos em algum lugar de forma dinâmica e intuitiva, diferentemente de um software de teste manual, como o Postman, por exemplo. Para isso, o desenvolvimento do frontend se faz necessário, permitindo a interação e visualização direta do usuário com o sistema. Nesse artigo, iremos utilizar a biblioteca React.js como exemplo de tecnologia no frontend.&lt;/p&gt;

&lt;p&gt;Para realizar a comunicação Front-API, é necessário a utilização de ferramentas que façam as requisições http, como o Axios, FetchAPI, Ajax, etc. Iremos optar aqui pelo Axios, instale ele com o comando "&lt;strong&gt;npm install axios&lt;/strong&gt;" no seu terminal.&lt;br&gt;
Obs: é importante que na sua API, esteja com o Cors configurado corretamente para não existir o bloqueio entre aplicações.&lt;/p&gt;

&lt;p&gt;Com sua API rodando, iremos relembrar as rotas implementadas e seus métodos para serem chamados pelo Axios.&lt;br&gt;
 No diretório do frontend, vamos criar uma pasta utils, e criar um arquivo api.js para armazenamos uma variável com a URL da nossa API. Por padrão do Axios, o instanciamos passando uma URL base.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq3ws2fhmhh8gio4xlndd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq3ws2fhmhh8gio4xlndd.png" alt="Image description" width="564" height="426"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Agora iremos criar a pasta service, com o nosso user-service para separar a lógica de serviço dos componentes.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5iwo86tntvxvyog33n43.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5iwo86tntvxvyog33n43.png" alt="Image description" width="791" height="672"&gt;&lt;/a&gt;&lt;br&gt;
Aqui, no nosso método para retornar todos os usuários, passamos a URL (já armazenada na variável) junto do método GET, que irá retornar a seguinte response (resposta):&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv9sjtur9elrabcvh9jez.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv9sjtur9elrabcvh9jez.png" alt="Image description" width="737" height="242"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Repare que ao fazer nossa requisição, a API nos retorna todos os dados que lá foi configurado: status code, headers, e o principal que é o data, que é o conteúdo que estamos buscando.&lt;/p&gt;

&lt;p&gt;Agora para apresentarmos isso ao nosso front, iremos no nosso componente e realizar esse resgate de dados.&lt;br&gt;
Precisamos definir o useState users e setUsers como um array vazio, para manipularmos os seus devidos estados e criamos uma função para recuperar os valores lá do nosso service e popular o array users, dessa forma:&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F438f0rfwok7o9glzzwf6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F438f0rfwok7o9glzzwf6.png" alt="Image description" width="438" height="313"&gt;&lt;/a&gt;&lt;br&gt;
E por fim o hook nativo do React useEffect para executar essa função apenas quando a página for renderizada.&lt;/p&gt;

&lt;p&gt;Agora estamos com a faca e o queijo na mão, já temos os valores dos usuários armazenados no useState e só precisamos imprimi-los.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdcttx5yuhe6gftc4ltdj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdcttx5yuhe6gftc4ltdj.png" alt="Image description" width="800" height="671"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Definimos uma condicional, para que só imprima a tabela caso exista usuários, e para isso, implementamos a função map no state users para percorrer todos os usuários e apresentar cada atributo seu. O resultado ficou assim: &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1nycwperi161zpflavcb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1nycwperi161zpflavcb.png" alt="Image description" width="282" height="236"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Agora que vimos como ler dados no front, nada mais justo que vermos como criar novos dados. Vamos precisar de um componente com um formulário para manipularmos os campos lá.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmtsvtxaaxk3e2hp1cgym.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmtsvtxaaxk3e2hp1cgym.png" alt="Image description" width="550" height="587"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Nos inputs, precisamos mapear os valores, e para isso setamos o atributo name igual aos campos definidos na nossa API, o handler onChange para alterarmos o state dos campos. &lt;br&gt;
Com a estrutura pré-definida, vamos ao service:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fd71xlmt63mb25xfk1ep1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fd71xlmt63mb25xfk1ep1.png" alt="Image description" width="473" height="376"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Seguimos a mesma lógica do método anterior, só que em um método post (e patch também), precisamos passar os dados que serão enviados como parâmetro, ou seja, agora junto do verbo HTTP passamos a URL, os dados que serão enviados e as configurações de headers, que aqui simulei um token de autenticação para demonstrar como seria caso a rota da sua API fosse protegida por esse tipo de serviço.&lt;/p&gt;

&lt;p&gt;Vamos acessar essa função no nosso formulário!&lt;br&gt;
Vamos definir os states com os campos do usuário e uma função para acessar nosso service.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fi78l1bic9ttm9437lue6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fi78l1bic9ttm9437lue6.png" alt="Image description" width="492" height="464"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A função handleSubmit serve para definir o que será executado quando o formulário for enviado, ali criamos um novo objeto de usuário com os estados atualizados do formulário e passamos esse objeto como parâmetro da função.&lt;br&gt;
 Vamos ver como ficou:&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzydydypptksh73giecbn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzydydypptksh73giecbn.png" alt="Image description" width="238" height="185"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdrsjuu2iwo7ttyxncc6k.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdrsjuu2iwo7ttyxncc6k.png" alt="Image description" width="169" height="308"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Com isso, vimos exemplos de métodos comuns em API's integrado com seu frontend. Em casos de CRUD, a lógica é a mesma, apenas adaptando o verbo HTTP passado no método.&lt;/p&gt;

</description>
      <category>api</category>
      <category>programming</category>
      <category>fullstack</category>
      <category>react</category>
    </item>
    <item>
      <title>Integração de Sistemas - API Rest</title>
      <dc:creator>tuliov1</dc:creator>
      <pubDate>Mon, 11 Mar 2024 18:54:42 +0000</pubDate>
      <link>https://forem.com/tuliopss/integracao-de-sistemas-api-rest-1c5m</link>
      <guid>https://forem.com/tuliopss/integracao-de-sistemas-api-rest-1c5m</guid>
      <description>&lt;p&gt;Ao se analisar questões de processos e comunicação dentro de uma empresa, é possível comprovar que soluções de Engenharia de Software são muito importantes para otimizá-las. Por exemplo, a necessidade de realizar conexões entre sistemas de setores diversos, desenvolvidos de forma independente e com diferentes tecnologias e estruturas, a fim de estabelecer uma melhor troca de informações de forma que traga uma clareza maior aos processos referentes. Nesse contexto, como os sistemas já estão desenvolvidos e consistentes, a junção deles em um só torna o sistema integrado mais produtivo, seguro, facilita o fluxo de informações, dentre outros benefícios.&lt;br&gt;&lt;br&gt;
  Segundo Aline Zenker et al. (2019, p. 82) “a utilização de componentes que já foram aplicados, testados e validados traz&lt;br&gt;
aumento de produtividade, qualidade e segurança ao software”.&lt;br&gt;
  Assim, vimos as vantagens que uma empresa tem em integrar sistemas e a importância da reutilização de software: economizar tempo e trazer segurança e consistência ao sistema. Uma das técnicas de integração que iremos explorar nesse artigo é a API.&lt;/p&gt;

&lt;p&gt;API, significa Application Programming Interface (Interface de Programação de Aplicação); e Rest  Representational State Transfer (Transferência Representacional de Estado). A API funciona como uma camada de abstração de comandos, que pode ser acessado pelo cliente no modelo Request-Response (requisição-resposta). A comunicação entre cliente e servidor é efetuada sob o protocolo HTTP (Hypertext Transfer Protocol), utilizado para a troca de dados.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F71lmf8mp21kgzeuji1ae.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F71lmf8mp21kgzeuji1ae.png" alt="request-response-image" width="800" height="479"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;O Rest é um padrão de arquitetura que define a forma como uma API deve ser desenvolvida, permitindo a comunicação eficaz com o servidor através de métodos que tornam possíveis a manipulação dos dados, métodos esses que são o GET, POST, PUT/PATCH e DELETE que serão explicados a seguir. &lt;br&gt;
  Os endpoints são onde iremos acessar a API, previstos em seu desenvolvimento. Em outras palavras, é uma URL que específica o recurso que será consultado.&lt;/p&gt;

&lt;p&gt;Ao realizar a requisição a uma API, o servidor traz como resposta o estado atual do dado requisitado. Os dados que se deseja enviar pela requisição, são enviados pelo o seu corpo (mais popularmente em formato JSON), e o servidor retorna junto da resposta o status code, que funciona como um feedback da sua requisição acompanhada de 3 dígitos e uma mensagem de texto curta.&lt;br&gt;
  Respostas Informativas (100 – 199);&lt;br&gt;
  Respostas bem-sucedidas (200 – 299);&lt;br&gt;
  Mensagens de redirecionamento (300 – 399);&lt;br&gt;
  Respostas de erro do cliente (400 – 499);&lt;br&gt;
  Respostas de erro do servidor (500 – 599);&lt;br&gt;
Mais detalhes sobre os status code: &lt;a href="https://developer.mozilla.org/pt-BR/docs/Web/HTTP/Status"&gt;https://developer.mozilla.org/pt-BR/docs/Web/HTTP/Status&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;O método GET é utilizado quando se deseja buscar informações de uma API, por exemplo, você deseja consultar uma lista de funcionários com suas informações detalhadas de uma empresa, a requisição com o método GET funciona perfeitamente.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;[url_base/funcionario/getFuncionarios]&lt;/strong&gt; --&amp;gt; /getFuncionarios é um endpoint que acessará o método GET para retornar as informações para o cliente&lt;br&gt;
  Corpo da resposta: &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0ukaae1jv97e69t3i7ju.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0ukaae1jv97e69t3i7ju.png" alt="response-get-funcionarios" width="800" height="1188"&gt;&lt;/a&gt;&lt;br&gt;
*status_code: 200&lt;/p&gt;

&lt;p&gt;O método POST, é útil quando é necessário enviar dados para a API, como criar um novo registro no sistema, seguindo o exemplo dos funcionários, caso você deseje registrar um novo funcionário na empresa.&lt;br&gt;
&lt;strong&gt;[url_base/funcionario/registrar]&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Corpo da requisição:&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2k6t4fkbxdfm6wl3594c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2k6t4fkbxdfm6wl3594c.png" alt="request-body-post" width="732" height="594"&gt;&lt;/a&gt;&lt;br&gt;
Corpo da resposta:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbzwqcrc9w8mqjefe4i96.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbzwqcrc9w8mqjefe4i96.png" alt="response-post" width="766" height="754"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;O status code 201 significa que o dado foi criado com sucesso.&lt;/p&gt;

&lt;p&gt;Os métodos PUT e PATCH, funcionam como um recurso para editar os dados de um registro já existente, entretanto, suas atuações se diferem de forma que o PUT atualiza todos os dados desse registro, enquanto o PATCH pode atualizar apenas um dado. Por exemplo, você deseja alterar os dados de um funcionário previamente registrado, caso queira alterar por completo, utilize o PUT, caso queira apenas um campo, o PATCH.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;[url_base/funcionario/edit/:{id}]&lt;/strong&gt; --&amp;gt; /edit/:{id} representa que o endpoint edit irá atualizar o funcionário que possuir o ID correspondente ao passado na URL, que possui basicamente como um filtro. Nesse caso iremos usar o ID: 1, logo /edit/1&lt;br&gt;
Corpo da requisição:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj8i5isw833pmx0eegy01.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj8i5isw833pmx0eegy01.png" alt="request-body-update" width="782" height="584"&gt;&lt;/a&gt;&lt;br&gt;
Atualizamos o campo salary desse funcionário&lt;/p&gt;

&lt;p&gt;Corpo da resposta:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8gv11t4m6xiehbceupv2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8gv11t4m6xiehbceupv2.png" alt="response-body-update" width="782" height="754"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;O método DELETE, como o nome sugere, é utilizado para excluir um registro do servidor. Por exemplo, você deseja excluir os dados de um funcionário da empresa.&lt;br&gt;
&lt;strong&gt;[url_base/funcionario/delete/2&lt;/strong&gt;&lt;br&gt;
Normalmente, um dado excluído não retornada nada, então vamos realizar um GET dos funcionários para verificar se o que possui o ID 2 ainda está na lista:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa0s3abqlanuhjlr4hmlj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa0s3abqlanuhjlr4hmlj.png" alt="response-get" width="800" height="1188"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A requisição foi realizada com sucesso, logo seu status code será 200&lt;/p&gt;

&lt;p&gt;Para se desenvolver uma API, é necessário estabelecer alguns passos:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Planejamento --&amp;gt; entender os objetivos do seu desenvolvimento com casos de uso e estabelecimento de requisitos.&lt;/li&gt;
&lt;li&gt;Projetar --&amp;gt; Modelagem de dados, definição de endpoints e seus métodos, criação de fluxogramas.&lt;/li&gt;
&lt;li&gt;Tecnologia --&amp;gt; a partir do planejamento, é possível escolher quais as melhores tecnologias para resolver os problemas (qual banco de dados, linguagens de programação, framework, etc.)&lt;/li&gt;
&lt;li&gt;Desenvolvimento --&amp;gt; momento de codificação da API, implementar sua lógica e critérios de segurança, manipulação dos dados.&lt;/li&gt;
&lt;li&gt;Teste --&amp;gt; verificar o funcionamento das funções e seus endpoints. Realizar testes com antecedência e de maneira isolada são boas práticas para evitar efeitos bola de neve.&lt;/li&gt;
&lt;li&gt;Documentar --&amp;gt; uma documentação completa da API é necessária para ajudar outros desenvolvedores a utiliza-la; informações como a descrição dos endpoints, os seus objetivos são imprescindíveis.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>api</category>
      <category>programming</category>
      <category>productivity</category>
      <category>development</category>
    </item>
  </channel>
</rss>
