En titt på WordPress HTTP API En gjennomgang

En av utfordringene som følger med å skrive en serie om en API - eller til og med en del av en API - er at det er vanskelig å dekke alle aspekter av APIen uten å bruke for mye tid dykking dypt i en del og samtidig prøver å ikke bare skumme over toppen av hver API uten å gi nok praktisk informasjon.

Case in point: Gjennom de siste seriene har vi tatt en titt på WordPress HTTP API. Spesielt har vi dekket wp_remote_get og wp_remote_post, og vi har gjort noe relativt omfattende arbeid med begge funksjonene, inkludert bygningseksempelprosjekter.

Saken er, det er fortsatt mye bakken som kan dekkes i WordPress HTTP API. I fremtiden kan vi gjøre en avansert serie på flere aspekter av API, men for nå, la oss se gjennom alt vi har dekket i denne serien.


Men først, hvorfor et sammendrag?

Å skrive en relativt lang serie om et par funksjoner kan dekke mye bakken. Problemet med å gjøre dette er at hvis du til enhver tid i fremtiden trenger å referere til en del, kan du ikke huske nøyaktig hvor informasjonen var plassert.

Eller kanskje verre, det kan hende du må tråkke gjennom en betydelig mengde informasjon for å finne det ene aspektet du trenger for å fortsette å gjøre fremgang på arbeidet ditt.

Selvfølgelig kan du alltid referere til serieindeksen, men for å gi en "rask guide" av slag, syntes jeg det kan være nyttig å oppsummere artiklene, funksjonene og notatene på høyt nivå angående segmentet av API som vi dekket bare hvis du trenger en referanse for arbeidet ditt.

Selvfølgelig, merk at du alltid kan se serien i sin helhet på serieoppføringssiden.


Eksterne forespørsler

Før vi vurderer hver av funksjonene, husk at en ekstern forespørsel kan defineres som prosessen ved hvilken en server gjør en forespørsel til en annen server.

Vanligvis kan en server ganske enkelt sende data til den andre serveren som vil da gjør noe med det (hvis det lagrer dataene, behandler dataene og så videre), og det kan eventuelt sende et svar tilbake.

På et høyt nivå, det er en ekstern forespørsel. For mer informasjon om denne ideen, vær sikker på å sjekke ut dette innlegget.


wp_remote_get

wp_remote_get er en funksjon som er en del av WordPress HTTP API som er ansvarlig for å lage forespørsler.

Funksjonen aksepterer:

  • En URL som forespørselen gjøres til
  • Utvalget av argumenter for å sende sammen med forespørselen

Hvis du primært er ansvarlig for henting informasjon fra serveren, så er dette den funksjonen du vil bruke.

For det andre, hvis du trenger mer enn en nettadresse eller mer kontroll over forespørselen som sendes, kan du se gjennom denne artikkelen for å se på alle argumentene som den aksepterer.

Hvordan virker dette?

Neste i serien, bygget vi en faktisk plugin som ville utnytte wp_remote_get for at vi skal kunne hente antall tilhengere for en gitt Twitter-konto, så vel som den siste tweet som er sendt fra Twitter-kontoen.

Hovedformålet med denne artikkelen og denne demonstrasjonen var å gi et praktisk eksempel på hvordan man skal bruke wp_remote_get i en "ekte verden" -innstilling. For full kildekoden for den fungerende demoen, må du lese den tilhørende artikkelen.

Hva blir tilbake?

Fordi wp_remote_get er fokusert på henting informasjon, det er bare fornuftig at vi forventer et svar, ikke sant? I den endelige artikkelen dekker wp_remote_get, vi så på hva som nettopp returneres fra serveren og hvordan WordPress formaterte det til bruk.

Hvis du i løpet av arbeidet ditt har en vanskelig tid å dechiffrere nøyaktig hva det er som kommer tilbake fra serveren (eller hvorfor det ikke virker som forventet), så er dette artikkelen du bør vurdere.


wp_remote_post

Akkurat som wp_remote_get er ansvarlig for å lage forespørsler, wp_remote_post er ansvarlig for å lage POST forespørsler.

Akkurat som med wp_remote_get, wp_remote_post aksepterer de samme argumentene:

  • Nettadressen som forespørselen gjøres til
  • En rekke argumenter som hjelper til med å skreddersy forespørselen til serveren

Men det er en grunnleggende forskjell i formålet med denne funksjonen og den forrige som diskuteres. Forskjellen er hva som skjer når forespørselen er fullført.

Akkurat som wp_remote_get er først og fremst vant til hente data, wp_remote_post er vant til sende data over ledningen som skal behandles - et svar kan aldri sendes tilbake.

For den første undersøkelsen av denne spesielle funksjonen - hva den aksepterer, inkludert den avanserte listen over argumenter - gjennomgå denne artikkelen.

Hvordan virker dette?

Akkurat som vi gjorde med wp_remote_get, Vi opprettet et plugin for å demonstrere hvordan wp_remote_post Fungerer i større sammenheng med et WordPress-tema.

Selv om plugin er på GitHub som referanse, går vi gjennom hele den første versjonen av plugin-modulen i følgende artikkel. Nærmere bestemt dekker vi hvordan du gjør forespørselen til et skript som er ansvarlig for å motta $ _POST data og deretter hvordan den kan formatere og returnere et svar til den som ringer.

Hva blir tilbake?

I den endelige artikkelen i serien fullførte vi pluginet ved å bruke MINDRE for å gi plugin et litt finere utseende, og vi rundet ut pluginet slik at det faktisk lagrer noen av responsdataene til databasen bare for å gi en ide om hvordan dette kan oppnås.


Konklusjon

Sammendrag innlegg er nytt territorium - for meg, i hvert fall - som jeg historisk har la serien min stå på egen hånd, men jeg trodde at dette ville være en fin referanse for å gi hensyn til at vi dekket så mye bakken i serien.

Å gjenta:

  • Her er en fullstendig oversikt over artikler i serien
  • Dette er en lenke til wp_remote_get kildekode
  • Her er wp_remote_post prosjekt på GitHub

Med det sagt, gi meg beskjed hvis du foretrekker sammendrag innlegg eller ikke. Som nevnt, er dette noe jeg vanligvis ikke gjør, men hvis det hjelper med å gi et referansepunkt for dere, så er jeg glad for å fortsette å gjøre dem for fremtidige serier ".