Skip to content

Instantly share code, notes, and snippets.

@renatogroffe
Created July 14, 2024 22:06
Show Gist options
  • Save renatogroffe/11b0c5496a59bc660018fe9ab6ab9763 to your computer and use it in GitHub Desktop.
Save renatogroffe/11b0c5496a59bc660018fe9ab6ab9763 to your computer and use it in GitHub Desktop.

ASPNETCore8-MinimalAPIs-JWT-Swagger-Extensions-Mermaid-HttpFiles-Mermaid_ContagemAcessos

Exemplo de API REST para contagem de acessos criada com o .NET 8 + ASP.NET Core + Minimal APIs, empregando extensões definidas em uma Class Library para utilização de JWT (JSON Web Tokens) e de configurações para que o Swagger suporte tokens. Inclui arquivos .http para testes a partir do Visual Studio Code.


Fluxo básico

sequenceDiagram
    actor Aplicacao cliente
    participant Login endpoint
    participant Contador endpoint
    Aplicacao cliente->>Login endpoint: POST /login
    Note over Aplicacao cliente,Login endpoint: Informar os atributos<br/>userID e password no JSON
    alt credenciais validas
        Login endpoint-->>Aplicacao cliente: 200 OK com Token JWT retornado
    else credenciais invalidas
        Login endpoint-->>Aplicacao cliente: 401 Unauthorized
    end
    Aplicacao cliente->>Contador endpoint: GET /contador
    Note over Aplicacao cliente,Contador endpoint: Token jwt informado como 'Bearer Token' no header Authorization
    alt Token JWT valido
        Contador endpoint-->>Aplicacao cliente: 200 OK com resultado da contagem
    else Token JWT invalido ou faltando
        Contador endpoint-->>Aplicacao cliente: 401 Unauthorized
    end
Loading
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment