Senden von Autorisierungsheadern mit WordPress
Wann immer wir Remote-Anfragen mit WordPress stellen, werden wir wahrscheinlich eine der folgenden Funktionen verwenden:
Und ja, manchmal verwenden wir je nach Art des Projekts cURL, aber das ist außerhalb des Inhalts dieses Beitrags.
In diesem Artikel möchte ich speziell auf das Erstellen von Remoteanforderungen und das Angeben von Headern für eine Drittanbieter-API eingehen.
Autorisierungsheader mit WordPress
Wenn es darum geht, asynchrone Anfragen mit WordPress zu stellen, läuft der Prozess oft so ab:
- Richten Sie die JavaScript-Funktion ein, um einen Aufruf an die Serverseite zu tätigen (natürlich mit einem sicheren Nonce ),
- Lassen Sie die Anfrage serverseitig mit einer der oben genannten Funktionen ausführen,
- Rückgabe der Antwort entweder in Form einer Erfolgs- oder Fehlermeldung ,
- Lassen Sie das clientseitige JavaScript die Antwort so behandeln, wie es basierend auf der Antwort passend erscheint.
Aber was ist, wenn die API-Anforderung, die Sie vom Server stellen müssen, mehr als einen einfachen Endpunkt mit ein paar Parametern erfordert?
Genauer gesagt, was ist, wenn das, was Sie schreiben, erfordert, dass Sie eine Art Autorisierung für Ihre Arbeit bereitstellen? Glücklicherweise erlaubt uns WordPress, Header zu setzen, die genau dieses Problem lösen.
Wenn Sie so etwas implementieren möchten, gehe ich davon aus, dass der Inhaltstyp der von JSON ist und dass die Autorisierung eine Art Token ist (Ihre Implementierung kann jedoch je nach System variieren, mit dem Sie arbeiten Arbeiten).
In diesem Fall wird mein Token einfach als $token identifiziert. Und hier ist ein einfaches Beispiel:
Etwas Bemerkenswertes
Wenn Ihr Host auf Apache läuft und diese Art von Anfrage nicht funktioniert, müssen Sie wahrscheinlich Ihre htaccess
Datei aktualisieren, damit sie die folgende Regel enthält: SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1
.
Requisiten an George, dass er mich damit verkuppelt hat.