Antworten:
Der Medientyp application/vnd.api+json
bezieht sich auf die JSON-API. Sie können hier ausführlich darüber lesen .
Kurz gesagt, JSON API ist eine Meinung und gut begründet:
… Spezifikation, wie ein Client das Abrufen oder Ändern von Ressourcen anfordern soll und wie ein Server auf diese Anforderungen reagieren soll.
vnd
, von der ich jetzt weiß, dass sie aufgrund von @Vasif das Herstellerpräfix ist. Eine Bearbeitung des Originals wäre hervorragend.
Der erste ist ein API-spezifischer Medientyp. Das Herstellerpräfix ( vnd.
) gibt an, dass es für diesen Anbieter benutzerdefiniert ist. Das +json
gibt an, dass es als JSON analysiert werden kann, aber als Medientyp sollte weitere Semantik definieren.
Der zweite bedeutet nur, dass der Inhalt JSON ist. Dies ist jedoch im Allgemeinen nicht sehr nützlich, da es nicht definiert, was die JSON-Werte bedeuten.
Ein guter Ausgangspunkt, um darüber zu lesen, wäre Wikipedia . Für weitere Details können Sie jedoch jederzeit den Links zu den entsprechenden RFCs auf dieser Seite folgen .
Wenn Sie sich nicht sicher sind, verwenden Sie application/json
- es ist der generische MIME-Typ, für den nur die von Ihnen zurückgegebenen Daten als wohlgeformter JSON erforderlich sind .
Der application/vnd.api+json
MIME-Typ ist für die Kommunikation mit dem (verwirrend benannten) "JSON API" -Protokoll reserviert .
„JSON API“ in diesem Zusammenhang nicht nicht bedeutet jede API basiert auf HTTP und JSON. Es ist auch keine vollständig spezifizierte API, sondern ein Framework zum Erstellen von APIs, mit denen der Client miteinander verbundene Entitäten abrufen und ändern kann. Beispielsweise könnte eine Blog-Anwendung eine API implementieren, die der Spezifikation "JSON API" entspricht und das Abrufen der letzten 10 Artikel eines bestimmten Autors mit Metadaten und Kommentaren für jeden Artikel in einer einzelnen HTTP-Anforderung ermöglicht.
Die Spezifikation definiert insbesondere:
Ein Dokument MUSS mindestens eines der folgenden Mitglieder der obersten Ebene enthalten:
data
: die "Primärdaten" des Dokumentserrors
: ein Array von Fehlerobjektenmeta
: Ein Metaobjekt, das nicht standardmäßige Metainformationen enthält.Die Mitglieder
data
und dürfenerrors
NICHT im selben Dokument koexistieren.
Der Medientyp MIME ( Multipurpose Internet Mail Extensions) (oder) ist eine standardisierte Methode, um die Art und das Format eines über das Internet übertragenen Dokuments anzugeben. Es ist in IETF RFC 6838 standardisiert . Die Internet Assigned Numbers Authority (IANA) ist die offizielle Stelle, die für die Verfolgung aller offiziellen MIME-Typen zuständig ist.
Der von der JSON-API verwendete Medientyp ist application / vnd.api + json und wurde ordnungsgemäß bei IANA registriert.
Der Medientyp API + JSON dient zur Interoperabilität zwischen verschiedenen APIs, die JSON bedienen.
Es wurde unter Berücksichtigung von "Thick JavaScript" -Clients und deren Anforderungen erstellt, ist jedoch nicht spezifisch für sie. Also mit dem Präfix vnd
(Anbieter).
Hinzufügen einiger weiterer Punkte zur JSON-API:
Wenn Sie den folgenden Header einrichten müssen Anwendung / vnd.hmrc.1.0 + json einrichten müssen
Dann solltest du mit gehen
Accept: application/vnd.hmrc.1.0+json
Mit der CUrl können Sie das Skript als ausführen
$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);
Ich hoffe es hilft!!