Обработка ошибок¶
В случае возникновения ошибки сервис вернёт её в формате:
{
"code": "",
"hint": "",
"message": "",
"details": ""
}
Сервис предоставляет возможность обрабатывать пользовательские ошибки вызванные оператором raise
{
"code": "SRV01",
"hint": "Try GET method",
"message": "This is postgresql error",
"details": "This is detail"
}
При этом транзакция будет завершена и откачена с помощью оператора ROLLBACK
.
Если необходимо передать пользовательскую ошибку в сервис, при этом сохранить результаты выполнения функции, можно использовать установку статуса ответа через GUC
perform set_config('response.status','405',true);
perform set_config('response.headers','[{"Content-Type":"application/json"}]',true);
return json_build_object('message','Only GET method is allowed');