Swagger
Utilização da Swagger para resolução de problemas de aplicação
A ferramenta seguinte que podemos utilizar para testar e depurar a nossa aplicação é Swagger. Já nos familiarizámos com ela anteriormente; como se lembra, nela podem-se ver todos os pontos finais da aplicação a ser desenvolvida, executá-los, e obter o resultado. Vejamos isto com mais detalhe.
Autorização em Swagger
Antes de mais nada, lembre-se de que Middleware Token Auth é activado por defeito, o que controla o acesso ao ponto final para a maioria dos pontos finais. Nega o acesso aos utilizadores que não foram autorizados ou mesmo aprovados, mas que não têm os direitos de acesso adequados (por exemplo, pertencem ao grupo Users, e o endpoint destina-se exclusivamente a Admins).
O token de autorização necessário pode ser encontrado utilizando o Developer Tools. Tudo o que precisa de fazer é entrar na aplicação web publicada e depois satisfazer qualquer pedido. O token será utilizado no Request Headers. Por exemplo, pode vê-lo na imagem do ecrã um pouco mais alto no momento em que fizemos um GET pedido para obter dados sobre países.
Vejamos como o pode obter directamente em Swagger. Para tal, encontrar o ponto final que é responsável pela autorização (Auth grupo, POST /Auth/ endpoint) e clicar no botão "Try it out". Este endpoint toma dois parâmetros, Login, e Password. Especifique-os e clique Execute para enviar o pedido. A propósito, aqui também pode ser útil utilizar o Developer Tools; pode abri-los para um estudo mais detalhado do pedido e da resposta.
A resposta receberá a ficha requerida, bem como informação detalhada sobre o utilizador e as suas sessões.
Pode ver que a resposta recebida não é muito diferente da que já vimos no Developer Tools; ao mesmo tempo, Swagger tem uma vantagem inegável na medida em que torna possível testar quaisquer pedidos e lançar pontos finais com os parâmetros necessários de uma forma conveniente. Mas antes de proceder a tais testes, vamos clicar Authorize e utilizar a ficha recebida para confirmar a autorização.
Envio de pedidos utilizando Swagger
Agora vamos enviar um pedido através de Swagger para obter dados sobre a primeira cidade que se encontra, com uma população de mais de 5 milhões de pessoas e a palavra "World" na descrição. Para o fazer, abra o GET /city/ e preencher os parâmetros necessários:
- _limit = 1 (só é necessária uma cidade)
- population_from = 5000000 (o valor da população deve ser verificado)
- _search_in = info (pesquisar apenas no campo info )
- _search = World (à procura da palavra World)
A resposta recebida mostra que o pedido foi executado correctamente. Recebemos informações sobre uma dessas cidades (vemos que count = 3O que significa que a base de dados contém informações sobre três cidades adequadas) e não recebeu quaisquer dados sobre o país em que se encontra (“country”: null), uma vez que a consulta não precisava de apresentar dados de tabelas relacionadas (se necessário, valeu a pena utilizar o _with parâmetro).