Я создаю REST API, но я столкнулся с проблемой.
Похоже, что принятая практика разработки API REST заключается в том, что если запрошенный ресурс не существует, возвращается 404.
Однако для меня это добавляет ненужную двусмысленность. HTTP 404 более традиционно связан с плохим URI. Таким образом, мы говорим: "Либо вы попали в нужное место, но эта конкретная запись не существует, или там нет такого местоположения на Интернетах! Я действительно не знаю, какой из них.."
Рассмотрим следующий URI: http://mywebsite/api/user/13
Если я получаю обратно 404, это потому, что пользователь 13 не существует? Или это потому, что мой URL должен был быть: http://mywebsite/restapi/user/13
В прошлом я только что вернул результат NULL с кодом ответа HTTP 200 OK, если запись не существует. Это просто и, на мой взгляд, очень чисто, даже если это не обязательно принятая практика. Но есть ли лучший способ сделать это?