В настоящее время я изучаю некоторые ответы JSON RPC 2.0 в своем коде. Тем не менее, я немного непонятно на что стандартные методы его использования:JSON RPC 2.0 стандартные ответы
1) Когда пользователь отправляет запрос с неправильными параметрами, я должен просто вернуть сообщение об ошибке по умолчанию дословного
{"jsonrpc": "2.0", "error": {"code": -32602, "message": " Invalid params"}, "id": "1"}
Или может ли сообщение быть более конкретным, например:
{"jsonrpc": "2.0", "error": {"code": -32602, "message": " Invalid params: invalid username"}, "id": "1"}
Или должны ли такие пользовательские сообщения иметь свой код ошибки?
2) Если пользователь скажет, что данные из базы данных и ответ «данные отсутствуют», так как в них мы не встречали ошибок, но ничего не возвращали, должны быть возвращены как JSON RPC error
, или не должно быть больше ответов, указывающих данные не было найдено? Другими словами, согласуется ли в JSON RPC использование ошибок в качестве нормальных условий возврата, например, в Google Go, или это более похоже на «что-то действительно испорченное» паники?