Отличный комментарий к неплохой (в целом) статье про HTTP-сервисы, в котором наглядно объясняется, когда нужно информацию об ошибке передавать клиенту при помощи стандартного HTTP-статуса, а когда - в теле HTTP-ответа со статусом
200 OK:Я запрашиваю
/account/123, мне сервис возвращает { status: 400, msg: "incorrect guid" }, я точно понимаю, что я ввел не верный гуид. Я запрашиваю
/account/t140762c2-0742-4046-9a0e-c4f81931c549 мне возвращает { status: 404, msg: "account not found" }, я точно понимаю, что акка с таким гуидом нету.Все что было выше - это ошибки БИЗНЕС логики.
А теперь я запрашиваю
/accounttttt/t140762c2-0742-4046-9a0e-c4f81931c549 и мне тупо возращается HTTP код 404 и тут я понимаю, что я накосячил с УРЛом.Это ошибка транспорта HTTP.