✅ WEB- ja WordPress -uutiset, -teemat, -laajennukset. Täällä jaamme vinkkejä ja parhaita verkkosivustoratkaisuja.

Etäpyynnöt wp_safe_remote_get-sovelluksella

9

Eilen jaoin viestin käyttämisestä, wp_remote_getmutta jätin pois vaihtoehtoisen toiminnon: wp_safe_remote_get. Alkuperäinen tavoite oli käyttää ensimmäistä viestiä näyttämään:

  1. Mitä alkuperäinen toiminto hyväksyy,
  2. Kuinka käyttää alkuperäistä toimintoa,
  3. Mitä alkuperäinen funktio palauttaa,
  4. Miltä toteutus näyttää.

Ja sitten menin katsomaan wp_safe_remote_get. Mutta siinä on haaste: minulla on älykkäitä ystäviä. Pian julkaisun julkaisemisen jälkeen saan vastauksen Roylta :

Kiitos, Roy! (Muista sanoa hänelle "Hei!". 🙂

Mutta vakavasti, jatko eiliseen postaukseen on juuri tämä: wp_safe_remote_get. Ja se, kuinka määrittää ero näiden kahden toiminnon välillä ja milloin käytät toista toiseen verrattuna.

wp_safe_remote_get

Suoraan API-dokumenteista opimme :

Tämä toiminto on ihanteellinen, kun HTTP-pyyntö tehdään mielivaltaiseen URL-osoitteeseen. URL-osoite tarkistetaan uudelleenohjauksen välttämiseksi ja väärennöshyökkäysten pyytämiseksi.

Ja samankaltaisesti kuin sen vastine, se hyväksyy URL-osoitteen ja sarjan argumentteja, jotka voivat määrittää, kuinka pyyntö tehdään.

Lisäksi, aivan kuten wp_remote_get, se myös palauttaa joukon vastaustietoja tai esiintymän, WP_Errorjos pyyntö epäonnistuu.

Tämän toiminnon käyttäminen ei eroa edellisestä, mutta se herättää kysymyksen:

Milloin käytämme toista toisen päälle? Tarkemmin sanottuna, milloin käytämme wp_remote_getverrattuna wp_safe_remote_get?

Lue Lähde

Kun kohtaat tämänkaltaisen tilanteen, sinun kannattaa ensin lukea lähde:

  1. wp_remote_get
  2. wp_safe_remote_get

Jos luet yllä olevat linkit, huomaat, että jälkimmäinen hylkää "turvattomat URL-osoitteet", jotka wp_http_validate_url määrittää useiden  edistyneiden tarkistusten avulla.

Mutta silti, kumpaa käytän?

Tämä jättää kysymyksen edelleen vastaamatta, eikö niin? Mielestäni on helppo tehdä yleislausunto, että sinun tulee aina käyttää wp_safe_remote_get-käyttöjärjestelmää (tai wp_safe_remote_post).

Kaikki projektit ovat kuitenkin erilaisia.

Jos esimerkiksi työskentelet laajennuksen parissa, jota aiotaan käyttää vain intranetissä, ja voit hallita esimerkiksi sallittujen URL-osoitteiden luetteloa, joka voidaan siirtää funktioon, voit käyttää ensin mainittua.

Jos kuitenkin esität jälkimmäisen käyttäjille, käytä aina toiminnon turvallista versiota.

Lyhyesti

Nyrkkisääntöni on tämä (ja se on samanlainen kuin desinfiointi):

Jos käyttäjät ovat vuorovaikutuksessa toiminnon kanssa, varmista, että he ovat vuorovaikutuksessa koodin turvallisimman version kanssa.

Muuten vaarassa on liikaa.

Tämä verkkosivusto käyttää evästeitä parantaakseen käyttökokemustasi. Oletamme, että olet kunnossa, mutta voit halutessasi kieltäytyä. Hyväksyä Lisätietoja