Как стать автором
Обновить

Все библиотеки имеют фатальные недостатки, или Как мы изобретали Retrofit-подобный велосипед для JSON-RPC протокола

Время на прочтение23 мин
Количество просмотров4.1K
Всего голосов 12: ↑12 и ↓0+12
Комментарии2

Комментарии 2

Какой код за что отвечает, каждый решает сам, в протоколе это не прописано;
Всё-таки в стандарте есть небольшой набор стандартных кодов для ошибок сервера:
-32768 to -32000
  • -32700 — Parse error
    Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text.
  • -32600 — Invalid Request
    The JSON sent is not a valid Request object.
  • -32601 — Method not found
    The method does not exist / is not available.
  • -32602 — Invalid params
    Invalid method parameter(s).
  • -32603 — Internal error
    Internal JSON-RPC error.
  • -32000 to -32099 — Server error
    Reserved for implementation-defined server-errors.

Всё верно. Стандартные ошибки, конечно есть. В тексте имелось в виду, скорее, что-то вроде аналогов 403 HTTP кода. Т.е. в случае использования JSON-RPC мы не ограничены высеченным в граните списком кодов ошибок и сами составляем нужный нам список с нужными нам значениями. Например, вместо 400 кода с деталями того, что пошло не так в теле ответа, мы можем завести отдельный код на каждый конкретный случай (невалидный email, невалидная сумма etc)

Зарегистрируйтесь на Хабре, чтобы оставить комментарий