Intern
GET հարցումը դեպի /orders/123 ճիշտ կազմված է, բայց տվյալների բազայում նման պատվեր չկա: Ծրագրը նորմալ է աշխատում: Որ կարգավիճակի կոդը պետք է վերադարձվի? 204 No Content 404 Not Found 410 Gone 403 Forbidden
sobes.tech AI
Պատասխան AI-ից
Правильный код состояния — 404 Not Found.
Объяснение:
- Запрос корректен, но ресурс (заказ с id 123) не найден в базе.
- 404 означает, что запрашиваемый ресурс отсутствует.
Другие варианты:
- 204 No Content — означает, что запрос успешен, но тело ответа пустое; не подходит, если ресурс не существует.
- 410 Gone — указывает, что ресурс был, но удалён навсегда; подходит, если известно, что заказ удалён.
- 403 Forbidden — означает, что доступ запрещён; не подходит, если просто нет такого заказа.
Пример на Go (использование net/http):
func getOrderHandler(w http.ResponseWriter, r *http.Request) {
orderID := "123" // пример
order, err := findOrderByID(orderID)
if err == ErrOrderNotFound {
http.NotFound(w, r)
return
}
// обработка найденного заказа
}