DEV Community

Cover image for Compartilhando e versionando coleções HTTP de forma facil e sem custo
Arthur Curty (Curty)
Arthur Curty (Curty)

Posted on

Compartilhando e versionando coleções HTTP de forma facil e sem custo

Se você já teve problemas para compartilhar coleções HTTP com membros de sua equipe, ou até teve dificuldades para versionar as mesmas. Então pega um café e vamos trocar um pouco de conhecimento nessa leitura rapida.


Uma alternativa a ferramentas como Postman e Insomnia é a utilização de arquivos .http, que são interpretados por extensões na maioria das IDEs.
Já consegue imaginar os benefícios disso? Seus projetos podem incluir um ou mais arquivos .http contendo suas requisições específicas. Sendo assim se o seu projeto está versionado em um GitHub da vida, automaticamente os arquivos .http também estarão lá versionados e prontos para serem compartilhados com seu time.
Além disso, como toda a equipe precisa ter acesso aos projetos, todos os membros terão fácil acesso a essa collection no projeto, o que facilita até o onboarding de novos integrantes.
Sem mais enrolação, vamos a alguns exemplos simples. Gerei um link no RequestCatcher para que todos possam testar facilmente e adicionei exemplos. Observe que, no arquivo abaixo, adicionei uma variável de ambiente com a URL base a ser usada, além de incluir exemplos de alguns métodos HTTP.

Elencado alguns pontos dessa sintaxe:

  • As ### são usadas para delimitar uma request de outra;
  • Conseguimos definir envs globais como no exemplo de @base_url;
  • É possivel usar envs dentro e fora de , como no exemplo {{$random.alphabetic()}} e a inclusão da {{base_url}} nos endpoints;
  • Estão presentes opções de variaveis dinamicas, como geração de UUID e dados fake;
  • É possivel compartilhar envs entre requests, o que é muito util em casos onde é necessária uma autenticação antes de fazer as requests subsequentes.

Como disse, é um exemplo simples, mas não é todo o poder de uso, para se aprofundar ainda mais e brincar um pouco, busque o plugin/extensão que está disponivel para sua IDE favorita. Vou listar dois que acredito serem os mais populares.

  • VSCode -> REST Client.
  • JetBrains -> Infelizmente para IDEs da empresa, isso só está disponivel em versões pagas, mas caso tenha uma licença, a documentação está disponivel aqui.

E ai, o que achou? Já conhecia? Consegue ver mais pontos positivos ou pontos negativos do uso?


Referencias

https://www.jetbrains.com/help/idea/http-client-in-product-code-editor.html

https://learn.microsoft.com/en-us/aspnet/core/test/http-files?view=aspnetcore-8.0#prerequisites

Top comments (0)