2017-09-09 1 views
0

J'utilise l'API Fetch à plusieurs reprises dans mon projet. Je me demande s'il y a des raisons de style, de vitesse, etc ... que je voudrais prendre en compte lorsque je choisis un moyen d'envoyer des données dans une requête POST.Lors de l'utilisation de l'API Fetch, existe-t-il un moyen privilégié pour envoyer des données via des requêtes POST?

Par exemple, je pourrais envoyer des données par l'intermédiaire du corps ou par l'intermédiaire d'un objet en-têtes dans le cas suivant:

return fetch("url", { 
     method: 'POST', 
     headers: new Headers({ 
      'description': 'true', 
      'state': 'stateToken', 
     }) 
    }).... 

return fetch("url", { 
     method: 'POST', 
     body: JSON.stringify({ 
      'description': 'true', 
      'state': 'stateToken', 
     }) 
    }).... 

Y at-il une « meilleure » façon d'envoyer les données?

Répondre

1

En général, il est recommandé d'envoyer des données dans le corps plutôt que dans les en-têtes - les en-têtes doivent vraiment informer le serveur des données (par exemple, quel format, qui est l'expéditeur, etc.). L'envoi de données réelles dans les en-têtes est un peu étrange et pourrait causer des problèmes de mise en cache.

+0

Les en-têtes peuvent parfois avoir des contraintes de longueur plus agressives. En d'autres termes, une grande charge utile peut échouer dans un en-tête mais fonctionner dans le corps simplement parce qu'ils ont des longueurs maximales différentes. – Shawn