Имам API крайната точка и заявката трябва да има „бисквитка“ (не удостоверяване). Какъв би бил правилният код за статут на HTTP, който да се върне, ако не е налице?
Бих предположил a 400
Лошата заявка ще бъде най-добрата.
Отговори:
3 за отговор № 1Във вашия въпрос няма много подробности, но предполагам 400
(Неправилна заявка) е добра опция:
Най-
400
Кодът на състоянието (Bad Request) показва, чесървър не може или няма да обработи заявката поради нещо, което се възприема грешка на клиента (напр. синтаксис на неправилно подадена заявка, невалидна заявка рамкиране на съобщения или подвеждащо маршрутизиране на искания).
Въпреки това, в зависимост от вашите изисквания, можете също да помислите за 422
(Unprocessable Entity) код на състоянието, дефиниран в спецификацията WebDAV, който е просто продължение на HTTP протокола:
Най-
422
Кодът на състоянието (Unprocessable Entity) означава сървър разбира типа съдържание на заявката (следователно a415
(Неподдържан тип носител) код на състоянието е неподходящ) и синтаксисът на заявката е правилен (по този начин a400
(Неправилна заявка) кодът на състоянието е неподходящ)не успя да обработи съдържанието инструкции. Например, това състояние на грешка може да възникне, ако има XML тялото на заявката съдържа добре оформени (т.е. синтактично правилни), но семантично погрешни, XML инструкции.
Само не забравяйте да предоставите добро описание в полезния товар на отговора, обяснявайки какво липсва в заявката.
0 за отговор № 2
Бих помислил за a 403 забранено код на състоянието за тази ситуация - където всичко останало е наред, но в искането липсва бисквитка. За да копирате данните си от свързаната препратка:
Сървърът разбра заявката, но отказва да я оторизира.
Ако в заявката са предоставени идентификационни данни за удостоверяване, сървърът ги счита за недостатъчни за предоставяне на достъп
Статус 401 неоторизиран е за когато заявката не притежава идентификационни данни за удостоверяване. Но 401 също изисква отговорът да съдържа a WWW-Authenticate поле за заглавие, Въз основа на въпроса, заявката трябва да има „бисквитка“, но не е и не е въпрос на удостоверяване.
Състояние 400 е, когато искането на клиента е погрешно, което може да е малко подвеждащо за сценария, който ОП описва.
Състояние 422 може би е подходящо, но мисля, че е твърде общо, тъй като означава нещо по линиите всичко е наред, но сървърът не може да обработи заявката.