Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

Content-Location header

Baseline Weitgehend verfügbar

Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit Juli 2015 browserübergreifend verfügbar.

Der HTTP Content-Location Repräsentations-Header gibt einen alternativen Speicherort für die zurückgegebenen Daten an. Sein Hauptzweck ist es, die URL einer Ressource anzugeben, die als Ergebnis der Inhaltsaushandlung übertragen wurde.

Der Content-Location-Header unterscheidet sich vom Location-Header. Content-Location gibt die direkte URL für den Zugriff auf die Ressource an, wenn eine Inhaltsaushandlung stattgefunden hat, was es dem Client ermöglicht, zukünftige Inhaltsaushandlungen für diese Ressource zu umgehen. Location hingegen weist entweder auf das Ziel einer 3XX-Weiterleitung hin oder auf die URL einer neu erstellten Ressource in einer 201 Created-Antwort.

Header-Typ Repräsentations-Header
Verbotener Anfrage-Header Nein

Syntax

http
Content-Location: <url>

Direktiven

<url>

Eine URL, die absolut oder relativ zur Anfrage-URL sein kann.

Beispiele

Anfordern von Daten von einem Server in verschiedenen Formaten

Angenommen, eine API einer Website kann Daten in den Formaten JSON, XML oder CSV zurückgeben. Wenn die URL für ein bestimmtes Dokument unter https://example.com/documents/foo liegt, könnte die Website je nach Accept-Header der Anfrage unterschiedliche URLs für Content-Location zurückgeben:

Anfrage-Header Antwort-Header
Accept: application/json, text/json Content-Location: /documents/foo.json
Accept: application/xml, text/xml Content-Location: /documents/foo.xml
Accept: text/plain, text/* Content-Location: /documents/foo.txt

Diese URLs sind Beispiele — die Seite könnte die verschiedenen Dateitypen mit beliebigen URL-Mustern bereitstellen, wie etwa einem Query-String-Parameter: /documents/foo?format=json, /documents/foo?format=xml und so weiter.

Der Client könnte sich dann merken, dass die JSON-Version unter dieser speziellen URL verfügbar ist und die Inhaltsaushandlung beim nächsten Anfordern des Dokuments überspringen.

Der Server könnte auch andere Inhaltsaushandlungs-Header berücksichtigen, wie Accept-Language.

Angabe der URL des Ergebnisses einer Transaktion

Angenommen, Sie haben ein <form> zum Senden von Geld an einen anderen Benutzer einer Website.

html
<form action="/send-payment" method="post">
  <p>
    <label>
      Who do you want to send the money to?
      <input type="text" name="recipient" />
    </label>
  </p>

  <p>
    <label>
      How much?
      <input type="number" name="amount" />
    </label>
  </p>

  <button type="submit">Send Money</button>
</form>

Wenn das Formular abgesendet wird, erzeugt die Webseite eine Quittung für die Transaktion. Der Server könnte Content-Location verwenden, um die URL dieser Quittung für den zukünftigen Zugriff anzugeben.

http
HTTP/1.1 200 OK
Content-Type: text/html; charset=utf-8
Content-Location: /my-receipts/38

<!doctype html>
(Lots of HTML…)

<p>You sent $38.00 to ExampleUser.</p>

(Lots more HTML…)

Spezifikationen

Spezifikation
HTTP Semantics
# field.content-location

Browser-Kompatibilität

Siehe auch