/ / Какъв е съответният HTTP код на състоянието, когато в искането липсва необходимата „бисквитка“? - http, http-status-кодове, http-status

Кой е подходящият код за състоянието на HTTP, когато в искането липсва задължителна "бисквитка"? - http, http-status-codes, http-status

Имам API крайната точка и заявката трябва да има „бисквитка“ (не удостоверяване). Какъв би бил правилният код за статут на HTTP, който да се върне, ако не е налице?

Бих предположил a 400 Лошата заявка ще бъде най-добрата.

Отговори:

3 за отговор № 1

Във вашия въпрос няма много подробности, но предполагам 400 (Неправилна заявка) е добра опция:

6.5.1. 400 Неправилна заявка

Най- 400 Кодът на състоянието (Bad Request) показва, чесървър не може или няма да обработи заявката поради нещо, което се възприема грешка на клиента (напр. синтаксис на неправилно подадена заявка, невалидна заявка рамкиране на съобщения или подвеждащо маршрутизиране на искания).

Въпреки това, в зависимост от вашите изисквания, можете също да помислите за 422 (Unprocessable Entity) код на състоянието, дефиниран в спецификацията WebDAV, който е просто продължение на HTTP протокола:

11.2. 422 Неприложимо лице

Най- 422 Кодът на състоянието (Unprocessable Entity) означава сървър разбира типа съдържание на заявката (следователно a 415 (Неподдържан тип носител) код на състоянието е неподходящ) и синтаксисът на заявката е правилен (по този начин a 400 (Неправилна заявка) кодът на състоянието е неподходящ)не успя да обработи съдържанието инструкции. Например, това състояние на грешка може да възникне, ако има XML тялото на заявката съдържа добре оформени (т.е. синтактично правилни), но семантично погрешни, XML инструкции.


Само не забравяйте да предоставите добро описание в полезния товар на отговора, обяснявайки какво липсва в заявката.


0 за отговор № 2

Бих помислил за a 403 забранено код на състоянието за тази ситуация - където всичко останало е наред, но в искането липсва бисквитка. За да копирате данните си от свързаната препратка:

Сървърът разбра заявката, но отказва да я оторизира.

Ако в заявката са предоставени идентификационни данни за удостоверяване, сървърът ги счита за недостатъчни за предоставяне на достъп

Статус 401 неоторизиран е за когато заявката не притежава идентификационни данни за удостоверяване. Но 401 също изисква отговорът да съдържа a WWW-Authenticate поле за заглавие, Въз основа на въпроса, заявката трябва да има „бисквитка“, но не е и не е въпрос на удостоверяване.

Състояние 400 е, когато искането на клиента е погрешно, което може да е малко подвеждащо за сценария, който ОП описва.

Състояние 422 може би е подходящо, но мисля, че е твърде общо, тъй като означава нещо по линиите всичко е наред, но сървърът не може да обработи заявката.