Rodar
API e Worker
dotnet run --project src/MyService.Api # HTTP + SPA
dotnet run --project src/MyService.Worker # background (IHostedService)
Endpoints disponíveis em Development
| Endpoint | O que é |
|---|---|
GET /health | liveness probe anônimo |
GET /openapi/v1.json | documento OpenAPI 3.1 |
GET /scalar/v1 | Scalar UI navegável |
POST /v1/auth/* | autenticação local — ver API › Autenticação |
/v1/orders/* | feature canon — ver API › Orders |
/ | SPA React |
Chamando endpoints autenticados
- Browser: login em
POST /v1/auth/session(cookieHttpOnly); escritas levam o headerX-XSRF-TOKENobtido emGET /v1/auth/csrf. - Mobile/serviços: JWT de
POST /v1/auth/tokenou/v1/auth/clients/token, enviado emAuthorization: Bearer <token>.
Detalhes de fluxo e payloads na seção API.
SPA em produção
O publish da Api builda e empacota o SPA em wwwroot automaticamente (target
PublishSpa). Seams: -p:BuildSpaOnPublish=false, -p:SpaInstallCommand,
-p:SpaBuildCommand. O fallback SPA nunca captura /v1, /health, /.well-known,
/openapi, /scalar (respondem 404, não HTML).