web-dev-qa-db-fra.com

Valeur d'en-tête: application/vnd.api + json

Quelqu'un peut-il expliquer les différences entre:

application/vnd.api+json

et

application/json
69
RockNinja

Le type de média application/vnd.api+json fait référence à l'API JSON. Vous pouvez lire à ce sujet en détail ici

En bref, l'API JSON est une opinion bien argumentée:

… Spécification de la manière dont un client doit demander que les ressources soient récupéré ou modifié, et comment un serveur doit répondre à ceux-ci demandes.

64
Gordon McCreight

Le premier est un type de support spécifique à l'API. Le préfixe du fournisseur (vnd.) indique qu'il est personnalisé pour ce fournisseur. Le +json indique qu'il peut être analysé en tant que JSON, mais le type de support devrait définir une sémantique supplémentaire par rapport au JSON.

La seconde signifie simplement que le contenu est JSON. Ceci n’est en général pas très utile, car cela ne définit pas la signification des valeurs JSON.

Un bon point de départ pour en savoir plus serait sur Wikipedia , mais pour plus de détails, vous pouvez toujours suivre les liens vers les RFC correspondantes sur cette page.

44
rmhartog

Le type de média {MIME) Multipurpose Internet Mail Extensions (MIME) (ou) est un moyen normalisé d'indiquer la nature et le format d'un document transféré sur Internet. Il est normalisé dans IETF RFC 6838 .. La IANA (Internet Assigned Numbers Authority)} est l'organisme officiel chargé de suivre tous les types MIME officiels.

Le type de support utilisé par API JSON est application/vnd.api + json et il a été correctement enregistré auprès de l'IANA. 

Le type de média API + JSON est destiné à l'interopérabilité entre différentes API servant de JSON.

Il a été créé en tenant compte des clients "épais JavaScript" et de leurs besoins, mais ne leur est pas spécifique. Donc, préfixé par vnd (fournisseur).

Ajout de quelques points supplémentaires sur l'API JSON:

  • L'API JSON est une spécification qui définit une spécification api sur la manière dont une requête et une réponse doivent être.
  • Nous permet de créer une structure bien définie (comme ressource-relations et ses liens etc.)
  • Spécifie comment les API REST doivent réagir pour les opérations CURD .
  • Permet au client de mettre en cache les réponses. 
2
rm -rf star

Si vous devez configurer l’en-tête ci-dessous application/vnd.hmrc.1.0 + json

Ensuite, vous devriez aller avec 

Accept: application/vnd.hmrc.1.0+json

En utilisant CUrl, vous pouvez exécuter le script en tant que

$url="https://test-api.service.hmrc.gov.uk/hello/world";
$ch = curl_init();
$curlConfig = array(
    CURLOPT_URL            => $url,
    CURLOPT_HTTPHEADER     => array('Accept: application/vnd.hmrc.1.0+json') 
);

curl_setopt_array($ch, $curlConfig);
$result = curl_exec($ch);
curl_close($ch);

J'espère que ça aide!!

0
Mahesh Yadav