Où les paramètres de cette valeur est API REST et pourquoi?
-
27-10-2019 - |
Question
Je l'API REST suivante:
POST /users/martin/notify/...
L'API est censé notifier une liste d'utilisateurs que l'utilisateur Martin a quelque chose à dire. La liste des utilisateurs à notifier peut varier de 1 à mille. Lorsque la liste des mille utilisateurs devrait être: Querystring, en-tête HTTP ou le corps de la demande? Pourquoi?
La solution
Corps de la demande. En-têtes et querystrings ont souvent des limitations de taille dans la pratique que vous avez certainement frappé avec mille identifiants. A un niveau plus théorique, le corps de la demande devrait être l'entité que vous souhaitez que le serveur à traiter via POST. En-têtes sont les protocole de niveau métadonnées relatives à cette entité; Ce sont des informations qui aide l'entité soit traitée, mais pas l'entité elle-même. Querystrings font partie du identifiant pour la ressource, et pas non plus une représentation de cette ressource.