Réponse valide de JSON

je travaille sur une application client et serveur et je suis tombé sur un problème intéressant. Nous créons une API restful et communiquons avec les clients avec les réponses JSON. Lors d'une suppression, nous retournons un 200 OK avec une réponse vide. Nos clients obtiennent le 200 OK, mais ne réussissant pas à analyser le JSON.

nous comprenons parfaitement l'analyse ratée (il n'y a rien à analyser), mais nous avions une plus grande question. Envoie une réponse vierge JSON valide, ou devrions-nous être retournant {} ou quelque chose à cet effet? Grâce.

14
demandé sur James Paolantonio 2012-08-15 18:16:13

2 réponses

HTTP/1.1 Définition concernant la méthode de suppression:

une réponse réussie devrait être 200 (OK) si la réponse inclut entité décrivant le statut, 202 (acceptée) si l'action n'a pas encore soit 204 (pas de contenu) si l'action a été adoptée mais la réponse ne comprennent pas une entité.

donc si votre serveur supprime l'élément immédiatement, alors les réponses suggérées seraient être:

  • 200 OK-retourner une sorte de code d'état (comme un true booléen, ou une chaîne de caractères disant "succès")
  • 204 pas de contenu-ne rien retourner, et demandez à votre client de surveiller cette réponse et de ne pas tenter L'analyse JSON, tout en sachant que la demande a été acceptée
12
répondu cloudfeet 2012-08-15 14:52:10

Juste faire un rapide test ici: http://jsonlint.com/ révèle que le vide n'est pas valide JSON, tandis que {} est valide JSON.

7
répondu Joel Fischer 2012-08-15 14:18:49