Codes d’erreur

2 min de lecture

Codes d’erreur

PgArachne renvoie des objets d’erreur standard JSON-RPC 2.0. Voici les codes spécifiques que vous pouvez rencontrer :

CodeMessageSignification
-32700Parse errorUn JSON invalide a été reçu par le serveur.
-32601Method not foundLa fonction n’existe pas dans le schéma.
-32602Invalid paramsLes arguments ne correspondent pas à la signature de la fonction.
-32001Permission deniedLe rôle utilisateur actuel manque de privilèges pour exécuter la fonction (niveau DB).
-32000Internal ErrorErreur générique du serveur (vérifiez les logs).
Comportement actuel : les réponses runtime sont principalement mappées sur des statuts HTTP avec un champ JSON-RPC message. Le code JSON-RPC personnalisé -32001 est utilisé pour les refus de rôle/droits.

Correspondance des statuts HTTP

HTTPMessage typiqueQuand cela se produit
400Invalid JSON request/Invalid function namePayload invalide ou format de méthode invalide.
401Authorization header is missing/Invalid or expired tokenAuthentification manquante ou invalide.
403Permission denied for the specified roleSET LOCAL ROLE a échoué (-32001).
404Function does not exist/JWT is disabled/get_jwt was removedLa méthode ciblée n’existe pas (-32601), /token a été appelé alors que JWT_SECRET n’est pas configuré, ou la méthode JSON-RPC supprimée get_jwt a été appelée (utilisez POST /{prefix}/{database}/token).
429Too many login attempts/Too many failed authentication attemptsRate limit de login ou d’authentification dépassé (LOGIN_RATE_LIMIT, LOGIN_RATE_LIMIT_PER_IP).
413Request body too large/Response too large/Too many files in responseLa requête dépasse MAX_REQUEST_BYTES, ou une réponse /file dépasse FILE_MAX_BYTES / FILE_MAX_ENTRIES.
500Function call failed/Transaction commit failedÉchec d’exécution ou de commit.
503Database connection failed/Database unavailableBase de données ou listener temporairement indisponible.