/ / Quel est le code d'état HTTP approprié lorsqu'un cookie requis est manquant dans la requête? - http, http-status-codes, http-status

Quel est le code d'état HTTP approprié lorsqu'un cookie requis est manquant dans la demande? - http, http-status-codes, http-status

J'ai un point de terminaison API et la demande doit avoir un cookie (pas d'authentification). Quel serait le code de statut HTTP correct à renvoyer s’il n’est pas présent?

Je supposerais un 400 Bad Request serait le meilleur.

Réponses:

3 pour la réponse № 1

Pas beaucoup de détails sont fournis dans votre question, mais je suppose 400 (Bad Request) est une bonne option:

6.5.1. 400 mauvaise demande

le 400 Le code d'état (Requête incorrecte) indique que lele serveur ne peut pas ou ne traitera pas la demande en raison de quelque chose qui est perçu comme étant une erreur client (syntaxe de requête malformée, requête non valide, par exemple) message cadrant ou acheminement de demandes trompeur).

Toutefois, en fonction de vos besoins, vous pouvez également envisager le 422 Code d'état (entité non traitable), défini dans la spécification WebDAV, qui n'est qu'une extension du protocole HTTP:

11.2 422 entités non traitables

le 422 Le code de statut (entité non traitable) signifie que le serveur comprend le type de contenu de l'entité de la demande (d'où un 415 (Le code d’état (type de support non pris en charge) est inapproprié), et le La syntaxe de l'entité de requête est correcte (donc un 400 (Mauvaise Demande) code d'état est inapproprié) maisétait incapable de traiter le contenu instructions. Par exemple, cette condition d'erreur peut se produire si un fichier XML Le corps de la requête contient bien formé (c'est-à-dire syntaxiquement correct), mais sémantiquement erronées, instructions XML.


Rappelez-vous simplement de fournir une bonne description dans la charge de réponse expliquant ce qui manque dans la demande.


0 pour la réponse № 2

Je considérerais un 403 interdit code de statut pour cette situation - où tout le reste est correct mais où il manque un cookie à la demande. Pour copier ses détails à partir de la référence liée:

Le serveur a compris la demande mais refuse de l’autoriser.

Si des informations d'authentification ont été fournies dans la demande, le serveur les considère comme insuffisantes pour accorder l'accès.

Statut 401 non autorisé est pour quand la demande manque les informations d'identification d'authentification. Mais 401 exige également que la réponse contienne une Champ d'en-tête d'authentification WWW. Sur la base de la question, la demande devrait comporter un cookie mais ne le serait pas et ce n’était pas une question d’authentification.

Statut 400 C'est quand la demande du client était erronée, ce qui peut être un peu trompeur pour le scénario décrit par l'OP.

Statut 422 pourrait être approprié, mais je pense, un peu trop générique car cela signifie quelque chose sur les lignes de tout allait bien, mais le serveur est incapable de traiter la demande.