Quelle est la différence entre
request.ContentType = "application/json ; charset=utf-8" ;
et
webRequest.ContentType = "application/x-www-form-urlencoded" ;
Quelle est la différence entre
request.ContentType = "application/json ; charset=utf-8" ;
et
webRequest.ContentType = "application/x-www-form-urlencoded" ;
Quelles implications cela a-t-il du côté du serveur ? Je vois des sites comme stackoverflow & Twitter utiliser x-www-form-urlencoded
pour les requêtes AJAX comme le vote, etc. La réponse renvoyée est JSON
. Je pense qu'il est préférable d'avoir une paire demande/réponse symétrique, c'est-à-dire les deux en JSON.
@AdamJohns : Ce blog vaut la peine d'être lu bien qu'il ne réponde pas exactement au "pourquoi" : homakov.blogspot.in/2012/06/
webRequest.ContentType = "application/x-www-form-urlencoded" ;
Où se trouve application/x-www-form-urlencoded D'où vient le nom de l'entreprise ?
Si vous envoyez HTTP GET vous pouvez utiliser les paramètres de requête comme suit :
http://example.com/path/to/page
?name=ferret&color=purple
Le contenu des champs est codé sous la forme d'une chaîne de requête. Le site application/x-www-form- urlencoded
Le nom de la requête provient du paramètre de requête de l'url précédent, mais le paramètre de requête est dans le corps de la requête au lieu de l'url.
L'ensemble des données du formulaire est envoyé sous la forme d'une longue chaîne de requête, qui contient les éléments suivants nom- valeur paires séparées par & caractère
par exemple, champ1=valeur1&champ2=valeur2
Il peut être simple demande appelé simple - ne déclenchent pas de vérification avant le vol
Une demande simple doit avoir certaines propriétés. Vous pouvez regarder ici pour plus d'informations. L'une d'entre elles est qu'il n'y a que trois valeurs autorisées pour l'en-tête Content-Type dans le cas de simples simples
Pour les arbres de paramètres plats, l'application/x-www-form-urlencoded a fait ses preuves.
request.ContentType = "application/json ; charset=utf-8" ;
axios et superagent deux des bibliothèques HTTP les plus populaires de npm, fonctionnent par défaut avec des corps JSON.
{ "id": 1, "name": "Foo", "price": 123, "tags": [ "Bar", "Eek" ], "stock": { "warehouse": 300, "retail": 20 } }
Maintenant, si la demande n'est pas simple demande le navigateur envoie automatiquement une requête HTTP avant la requête originale en OPTIONS pour vérifier s'il est possible d'envoyer la demande originale en toute sécurité. Si c'est le cas, envoyez alors la demande réelle. Vous pouvez regarder ici pour plus d'informations.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.