testgetjwt 830 B

12345678910111213141516171819202122232425
  1. #!/bin/bash
  2. # Script 1: Obtém JWT via login
  3. # Configurações
  4. API_URL="http://localhost:8000/login" # Rota de login
  5. USERNAME="newuser"
  6. PASSWORD="strongpass123" # Substitua pela senha real
  7. # Body JSON para login
  8. BODY="{\"username\":\"${USERNAME}\",\"password\":\"${PASSWORD}\"}"
  9. # Faz POST para login e extrai o token JWT usando jq (instale jq se necessário: sudo apt install jq)
  10. JWT=$(curl -s -X POST "${API_URL}" \
  11. -H "Content-Type: application/json" \
  12. -d "${BODY}" | jq -r '.data.token')
  13. # Verifica se JWT foi obtido
  14. if [ -z "$JWT" ] || [ "$JWT" = "null" ]; then
  15. echo "Erro ao obter JWT. Resposta do servidor:"
  16. curl -v -X POST "${API_URL}" -H "Content-Type: application/json" -d "${BODY}"
  17. exit 1
  18. fi
  19. echo "JWT obtido: ${JWT}"
  20. echo "Salve este JWT para usar no próximo script (ex: export JWT=${JWT})"