Comment implémenter les requêtes asynchrones de l'API Baidu Wenxin Yiyan en PHP ?
L'API Baidu Wenxinyiyan est une interface qui fournit des extraits d'articles aléatoires. En appelant cette interface, nous pouvons obtenir un extrait sélectionné d'un bel article. Cet article explique comment utiliser PHP pour implémenter des requêtes asynchrones à l'API Baidu Wenxin Yiyan.
Tout d'abord, nous devons obtenir l'adresse et les paramètres de l'API Baidu Wenxin Yiyan. L'adresse de l'API Baidu Wenxin Yiyan est http://api.vip68.com/. Il vous suffit de raccorder l'interface que vous souhaitez demander après l'adresse. L'interface est divisée en trois formes : phrase, image et voix. Nous pouvons choisir l'interface appropriée en fonction de nos besoins.
En PHP, nous pouvons utiliser la bibliothèque cURL pour faire des requêtes asynchrones à l'API. cURL est un outil réseau puissant capable de gérer une variété de requêtes réseau différentes. Tout d’abord, nous devons activer l’extension cURL en PHP.
Recherchez et supprimez les points-virgules avant les deux lignes suivantes dans le fichier php.ini :
;extension=curl
;extension=openssl
Puis redémarrez le serveur Apache pour que l'extension prenne effet.
Ensuite, nous pouvons implémenter des requêtes asynchrones à l'API Baidu Wenxin Yiyan via l'exemple de code suivant :
<?php function getWisdomQuote() { $url = 'http://api.vip68.com/sentence/random'; $ch = curl_init($url); // 设置cURL选项 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HEADER, false); // 发送异步请求 curl_multi_add_handle($multi_handle, $ch); $running = null; do { curl_multi_exec($multi_handle, $running); } while ($running); // 获取返回结果 $response = curl_multi_getcontent($ch); curl_multi_remove_handle($multi_handle, $ch); curl_multi_close($multi_handle); return $response; } // 调用函数获取返回结果 $result = getWisdomQuote(); // 处理返回结果 $result = json_decode($result, true); if ($result && isset($result['data']['content'])) { echo $result['data']['content']; } else { echo '获取失败'; }
Dans l'exemple ci-dessus, nous avons défini une fonction getWisdomQuote
pour envoyer des requêtes asynchrones et obtenir les résultats renvoyés. Tout d'abord, nous devons définir l'URL demandée, puis utiliser la fonction curl_init
pour initialiser une session cURL. getWisdomQuote
函数用于发送异步请求并获取返回结果。首先,我们需要设置请求的URL,然后使用curl_init
函数初始化一个cURL会话。
接着,我们设置了一些cURL选项,比如CURLOPT_RETURNTRANSFER
用于告诉cURL将请求的结果保存到一个变量中而不是直接输出到浏览器,CURLOPT_HEADER
用于告诉cURL不返回响应头部。
然后,我们使用curl_multi_add_handle
函数将请求句柄添加到curl_multi
对象中,以实现异步请求。
最后,我们使用curl_multi_exec
函数执行异步请求,并使用curl_multi_getcontent
函数获取返回结果。然后,我们通过json_decode
函数将返回结果解码为JSON格式,并通过判断结果是否存在来处理结果。
最后,我们可以在PHP中调用getWisdomQuote
CURLOPT_RETURNTRANSFER
pour indiquer à cURL d'enregistrer le résultat de la requête dans une variable au lieu de l'afficher directement dans le navigateur, CURLOPT_HEADER
utiliser Yu indique à cURL de ne pas renvoyer les en-têtes de réponse. Ensuite, nous utilisons la fonction curl_multi_add_handle
pour ajouter le handle de requête à l'objet curl_multi
afin d'implémenter des requêtes asynchrones. 🎜🎜Enfin, nous utilisons la fonction curl_multi_exec
pour effectuer la requête asynchrone, et utilisons la fonction curl_multi_getcontent
pour obtenir le résultat de retour. Ensuite, nous décodons le résultat renvoyé au format JSON via la fonction json_decode
et traitons le résultat en déterminant s'il existe. 🎜🎜Enfin, on peut appeler la fonction getWisdomQuote
en PHP pour récupérer l'extrait de Baidu Wenxin Yiyan et afficher le résultat sur la page. 🎜🎜Grâce aux étapes ci-dessus, nous pouvons implémenter des requêtes asynchrones vers l'API Baidu Wenxin Yiyan en PHP et obtenir des extraits d'articles sélectionnés. J'espère que cet article vous aidera à apprendre et à utiliser l'API de requête asynchrone PHP ! 🎜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!