Risposte:
Il tipo di supporto si application/vnd.api+json
riferisce all'API JSON. Puoi leggerlo in dettaglio qui .
In breve, l'API JSON è un supponente e ben ragionato:
... specifica su come un client dovrebbe richiedere che le risorse vengano recuperate o modificate e come un server dovrebbe rispondere a tali richieste.
vnd
, che ora so essere il prefisso del fornitore a causa di @Vasif. Una modifica dell'originale sarebbe superba.
Il primo è un tipo di supporto specifico dell'API. Il prefisso del fornitore ( vnd.
) indica che è personalizzato per questo fornitore. Il +json
indica che può essere analizzato come JSON, ma il tipo di supporto deve definire ulteriore semantica oltre a JSON.
Il secondo significa solo che il contenuto è JSON. Questo in generale non è molto utile, tuttavia, perché non definisce il significato dei valori JSON.
Un buon punto di partenza per leggere questo argomento sarebbe su Wikipedia , ma per maggiori dettagli puoi sempre seguire i link alle RFC corrispondenti in quella pagina .
Se non sei sicuro, usa application/json
: è il tipo MIME generico che richiede solo che i dati restituiti siano un JSON ben formato .
Il application/vnd.api+json
tipo MIME è riservato per la comunicazione utilizzando il protocollo "JSON API" (chiamato in modo confuso) .
"API JSON" in questo contesto non indica alcuna API basata su HTTP e JSON. Non è nemmeno un'API completamente specificata, piuttosto è un framework per la creazione di API che consentono al client di recuperare e modificare entità correlate. Ad esempio, un'applicazione blog potrebbe implementare un'API conforme alla specifica "API JSON", che consente di recuperare gli ultimi 10 articoli di un determinato autore, con metadati e commenti per ogni articolo, in una singola richiesta HTTP.
La specifica definisce, in particolare:
Un documento DEVE contenere almeno uno dei seguenti membri di primo livello:
data
: i "dati primari" del documentoerrors
: un array di oggetti di erroremeta
: un meta oggetto che contiene meta-informazioni non standard.I membri
data
eerrors
NON DEVONO coesistere nello stesso documento.
Il tipo di supporto MIME (Multipurpose Internet Mail Extensions) (o) è un modo standardizzato per indicare la natura e il formato di un documento trasferito su Internet. È standardizzato in IETF RFC 6838 . L' Internet Assigned Numbers Authority (IANA) è l'organismo ufficiale responsabile del monitoraggio di tutti i tipi di MIME ufficiali.
Il tipo di supporto utilizzato dall'API JSON è application / vnd.api + json ed è stato registrato correttamente con IANA.
Il tipo di supporto API + JSON è per l'interoperabilità tra diverse API che servono JSON.
È stato creato tenendo in considerazione i client "thick JavaScript" e le loro esigenze, ma non è specifico per loro. Quindi, preceduto da vnd
(venditore).
Aggiunta di alcuni punti in più sull'API JSON:
Se è necessario configurare l'intestazione dell'applicazione di seguito / vnd.hmrc.1.0 + json
Allora dovresti andare con
Accept: application/vnd.hmrc.1.0+json
Usando il CUrl puoi eseguire lo script come
$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);
Spero che sia d'aiuto!!