Explorez l'API HTTP WordPress : wp_remote_post Présentation

WBOY
Libérer: 2023-08-26 20:38:01
original
1379 Les gens l'ont consulté

Dans cette première série de l'API HTTP WordPress, nous avons découvert wp_remote_get. Plus précisément, nous avons examiné les aspects suivants de l'API :

  • Aperçu des fonctionnalités
  • Un exemple pratique
  • Comment gérer les réponses
  • et comprendre les paramètres des fonctions

Nous continuons notre série sur l’API HTTP WordPress, mais nous allons tourner notre attention vers la deuxième approche de l’API : wp_remote_post.

Dans la prochaine série d'articles, nous étudierons cette fonction pour comprendre ce qu'elle fournit et pourquoi elle est utile, des exemples pratiques sur la façon de la mettre en œuvre dans notre travail, et comment comprendre sa fonction et les réponses qui en découlent.

Cela dit, commençons notre enquête sur cette fonction.


Demande à distance : Actualiser

Si vous n'avez pas suivi jusqu'à présent, je vous recommande fortement de consulter le premier article de cette série pour au moins comprendre les bases du GETcomment fonctionnent les requêtes.

Honnêtement, POST 请求并没有那么不同。正如 GET 请求通常用于从服务器检索信息一样,POST les demandes ne sont pas si différentes. Tout comme une requête

est généralement utilisée pour récupérer des informations sur un serveur, une requête

est généralement utilisée pour envoyer un message à un serveur. 探索 WordPress HTTP API:wp_remote_post 概述

    Mais voici le problème : les deux protocoles sont capables d'envoyer et de recevoir des données, mais voici une règle générale sur la façon dont je gère habituellement les requêtes GET et POST.
  • GET Les requêtes sont généralement utilisées pour récupérer
  • des informations sur un serveur
  • et nécessitent donc une réponse POST Les requêtes sont généralement utilisées pour envoyer
  • des informations au serveur
et même si une réponse peut ne pas être reçue, il est toujours bon de savoir si le serveur a reçu et traité la réponse correctement

Dans les articles restants de cette partie de la série, nous verrons comment gérer les deux situations, c'est-à-dire comment gérer la situation dans laquelle aucune réponse n'est donnée et comment gérer la situation dans laquelle une réponse

est donnée
.

Résumé de la façon de faire une demande

Maintenant, en ce qui concerne les requêtes au niveau du serveur (notamment en PHP), elles sont généralement émises sur la base des deux fonctions suivantes (sauf si vous utilisez une bibliothèque tierce qui dépasse le cadre de cette série).

    Bien que nous les ayons abordés plus en détail dans notre premier article, je vais les résumer ici.
  • file_get_contents
  • Accepte une URL en paramètre et renverra les données demandées ou false en cas d'échec. Il s'agit d'un moyen relativement courant de récupérer des données pour des requêtes distantes. cURL
est une bibliothèque complète (plutôt qu'une fonction) qui offre aux développeurs des options de configuration complètes à ajuster en fonction de leurs besoins. Il y a beaucoup à apprendre sur cette bibliothèque. Si vous êtes un développeur avancé, consultez définitivement cURL.

file_get_contentscURL

Dans la plupart des cas, il est facile de comprendre comment faire une demande, mais la mesure dans laquelle vous ajustez la façon dont vous faites une demande dépend entièrement de l'option que vous choisissez d'utiliser, c'est-à-dire

ou

.

Bien sûr, il s'agit davantage de la manière PHP de faire des requêtes, et même si nous pouvons l'implémenter dans certains travaux en fonction de la nature du projet, cela ne couvre pas nécessairement la manière WordPress.

En fait, le contenu ci-dessus est une brève revue basée sur le contenu précédent. Néanmoins, il est important de comprendre d’où nous venons, ce que nous pouvons faire et où nous allons. 如何在 WordPress 中发出 POST

POST Demande

Comme mentionné ci-dessus, les commentaires ci-dessus sont plus pertinents pour PHP, examinons donc les requêtes

dans le contexte de WordPress.

POSTSi vous créez des projets pour WordPress ou créez des produits sur WordPress, il est important de comprendre les API disponibles pour vous assurer de ne pas perdre certains types de fonctionnalités ou de fonctionnalités en effectuant une mise à niveau vers l'application WordPress principale.

Ainsi, tout comme nous avons examiné les normes de codage WordPress pour passer en revue les meilleures pratiques d’écriture de code basé sur WordPress, nous allons maintenant examiner les API disponibles pour écrire des requêtes wp_remote_post en utilisant les meilleures pratiques.

Pour ce faire, entrez

.
  • Cette fonction accepte deux paramètres :
  • L'URL à laquelle la demande sera faite

Tableau de paramètres permettant de personnaliser les requêtes adressées au serveur.

🎜 🎜Bien que les tableaux de paramètres sortent quelque peu du cadre de ce que nous allons faire dans cette série, il est important de comprendre ce qui est disponible, surtout si vous comptez effectuer un travail plus avancé dans cette série à l'avenir : 🎜
  • method 指的是请求使用哪个方法。考虑到我们 API 方法的性质,我们显然正在使用 POST.
  • timeout c'est le temps que vous êtes prêt à attendre qu'une demande soit traitée avant d'abandonner. La valeur par défaut est de cinq secondes, mais cette valeur peut être réduite ou augmentée selon la nature de l'application.
  • redirection Cela ressemble à l'URL vers laquelle vous serez redirigé une fois la demande terminée, n'est-ce pas ? Il s'agit plutôt de l'unité de temps (en secondes) nécessaire pour attendre une redirection avant d'abandonner la demande.
  • user-agent Nous permet de contrôler le user-agent envoyé avec la requête. Généralement, il s'agit de WordPress et du numéro de version, mais c'est évidemment personnalisable.
  • blocking En bref, s'il est défini sur true, le script continuera à s'exécuter jusqu'à ce que le serveur renvoie quelque chose ; sinon, le script continuera à s'exécuter sans bloquer le reste de l'application. Bien sûr, cela se fait au prix de ne jamais obtenir de réponse, mais selon les conditions dans lesquelles vous construisez, cela peut convenir.
  • compress a été introduit dans WordPress 2.6 et vous permet d'envoyer le corps de la requête dans un format compressé. Cela dépassera le cadre de nos prochains articles.
  • decompress Semblable à la compression, sauf de notre côté - si des données compressées sont reçues, cela nous permettra de décompresser le contenu avant d'effectuer tout travail ou traitement ultérieur.
  • sslverify a été introduit dans WordPress 2.8 et est utile pour les scénarios dans lesquels vous devez vérifier si un certificat SSL est valide. Sinon, la demande est refusée ; sinon, vous pouvez partir. Cette option sort également du cadre de cet ensemble d’articles.

Évidemment, il y en a beaucoup de disponibles. Au cours des prochains articles, j'espère examiner certains de ces sujets plus en détail, mais regardons d'abord un exemple très simple et pratique utilisant les fonctions API.


Faire POSTdemandes

Les choses devraient être claires maintenant, n'est-ce pas ? C'est tout aussi simple à utiliser wp_remote_post 应该和使用 wp_remote_get, donc à partir du prochain article, c'est exactement ce que nous ferons.

Avant cela, assurez-vous d'avoir lu tous les articles jusqu'à présent, et veuillez laisser vos commentaires et/ou questions sur cet article spécifique dans les commentaires.

Ensuite, mettons-nous au travail !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!