Wordpress http api - dokumentáció, titkok és finomságok egyszerű szavakkal

A PHP-ben több lehetőség van HTTP-kérelem küldésére, a WordPress-ban csak egy. De ez az egyik módszer magában foglalja a PHP által támogatott összes lehetőséget - ez az API, ez a szabvány és kényelmes!

A HTTP API rövid bemutatása

Nagyon újoncoknak érdemes megmagyarázni, hogy mi a HTTP kérés. Ez egy kérés a böngészőtől a kiszolgálóhoz vagy egy szerverhez a másikhoz, ahol hasonló párbeszéd történik:

  1. Szia szerver, meg tudja mutatni a fájlt: file.html?
  2. Üdvözlet! Tudom, itt van.

Úgy néz ki, mint ez a párbeszéd, mint ez (csak az ügyfél oldalán ebben az esetben a szerverünk, amely egy másik kiszolgálóhoz intéz egy kérelmet):

Wordpress http api - dokumentáció, titkok és finomságok egyszerű szavakkal

HTTP kérések PHP-ben történő létrehozásakor általában az egyik opciót használják: a cURL könyvtárat vagy a PHP-be épített streameket (streameket). A kérelmek küldésének különböző módjai egyszerűsítése és szabványosítása, a 2.7 verzió óta. a WordPress megjelenik osztály WP_Http. amely a HTTP API alapját képezte.

A WP 4.6-tól kezdve a WP_Http magját teljesen lecserélték a PHP-vel a PHP könyvtárakra vonatkozó kérésekkel, és mostantól az összes kérés végrehajtásra kerül. A fenti WP_Http_Curl és WP_Http_Streams osztályok már nem használatosak. Tehát technikailag a HTTP API WordPress kardinálisan megváltozott, de ugyanolyan maradt: minden működik, ahogy működött. új funkciók, amelyek közül néhány már megjelentek (kis-és nagybetűk fejléc, támogatja a nemzetközi domainek mint böcean.ch) Továbbá, a bevezetése kérések könyvtárak várható, és a többi (egyidejű kérések) jelenik meg a jövőbeni kiadásokban, és mégis csak a kérések könyvtár közvetlenül.

Elutasítva a WP 4.6-mal. A WP_Http meghatározza a közlekedés típusát, és egy másik, erre a típushoz tartozó osztályt hív fel. A hívott osztály maga hozza létre a lekérdezést. Alapértelmezés szerint a WordPress-ben kétféle ilyen osztály létezik: a WP_Http_Curl és a WP_Http_Streams

Az ilyen API kényelmessége és szükségessége abban rejlik, hogy a különböző gépek támogatják a különböző kérések küldését, és egyesek nem támogatnak. A HTTP API feladata, hogy egységes szabványt hozzon létre a WordPress lekérdezések használatához, a kérések mindig működjenek, ha a kérés egyik módja nem támogatott, akkor alternatív megoldást talál.

A HTTP API egy másik pluszja, hogy egyetlen adatstandardot kell megadnunk, amikor különböző típusú lekérdezésekkel dolgozunk, pl. mindig ugyanazokat a paramétereket adjuk meg, és átadjuk őket a HTTP API funkciónak, és az osztály már kiválasztja a megfelelő szállítási típust, például a cURL-t, megváltoztatja a paramétereket az aktuális szállítási típus megértéséhez és elküldi a kérelmet.

HTTP API A WordPress egy teljes körű API, amely számos apró dolgot figyelembe vesz, és több száz hibát kijavít. Azt is meg kell jegyeznünk, hogy a WP 4.4 verziója előtt a HTTP API nagyon különbözött attól, ami most van, ezért a kézikönyv néhány jellemzője esetleg nem működik a 4.4.

Szinte minden közlekedési lehetőség cserélhető opciók vagy szűrők segítségével. Például hozzáadhat egy másik, a szállítási osztályodat a http_api_transports szűrő segítségével. Vagy a wp-config.php fájlban található állandók beállításánál engedélyezheti a proxy módot:

A proxy működésének megértéséhez olvassa el a WP_HTTP_Proxy osztályt<>

Végül a HTTP API könnyen kibővíthető a Twitter API, a Google Térkép API stb.

HTTP API függvényeket, és kérheti a küldést

A HTTP API használata nagyon egyszerű, ezért speciális API-funkciók vannak:

Küldő funkciók lekérdezése: