Maison > Article > développement back-end > Comment implémenter le rappel asynchrone de l'interface Baidu Wenxin Yiyan dans le développement PHP ?
Comment implémenter le rappel asynchrone de l'interface Baidu Wenxin Yiyan dans le développement PHP ?
Hitokoto, en tant que service de phrases courtes plein de philosophie, d'émotion et de hasard, est profondément apprécié par de nombreux développeurs et utilisateurs. Baidu fournit une interface qui peut obtenir des informations via des rappels asynchrones. Ainsi, cet article présentera comment implémenter le rappel asynchrone de l'interface Baidu Wenxin Yiyan dans le développement PHP.
Tout d'abord, nous devons enregistrer un compte développeur Baidu et créer une application pour obtenir la clé API et la clé secrète requises pour accéder à l'API. Ensuite, nous pouvons commencer à écrire du code.
Tout d'abord, créez un fichier nommé hitokoto.php
et ajoutez le code suivant : hitokoto.php
的文件,并添加以下代码:
<?php $apiKey = '你的API Key'; $secretKey = '你的Secret Key'; $url = 'http://api.hitokoto.cn/?encode=json'; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_TIMEOUT, 10); curl_setopt($ch, CURLOPT_HTTPHEADER, ['X-Bce-Signature-Key: ' . $apiKey . ':' . $secretKey]); $response = curl_exec($ch); if (curl_errno($ch)) { echo 'Error: ' . curl_error($ch); } else { echo $response; } curl_close($ch);
上述代码中,我们首先定义了API Key和Secret Key,并设置了要请求的接口URL。接着,我们使用curl_init()
函数初始化一个CURL会话,并通过curl_setopt()
函数设置一些CURL选项。其中,CURLOPT_URL
指定要访问的URL,CURLOPT_RETURNTRANSFER
设为1表示将请求的返回值以字符串形式返回,CURLOPT_HEADER
设为0表示不返回响应头信息,CURLOPT_TIMEOUT
设定超时时间,CURLOPT_HTTPHEADER
设置请求头信息,其中包括API Key和Secret Key。接下来,我们通过curl_exec()
函数发送请求,并通过curl_errno()
函数检查是否有错误。最后,我们使用curl_close()
函数关闭CURL会话。
保存文件后,我们可以通过访问hitokoto.php
文件来获取一言的内容。
以上是使用CURL实现的一种方式。除此之外,我们还可以使用PHP的file_get_contents()
函数来实现。
修改hitokoto.php
文件的代码如下:
<?php $apiKey = '你的API Key'; $secretKey = '你的Secret Key'; $url = 'http://api.hitokoto.cn/?encode=json'; $context = stream_context_create([ 'http' => [ 'method' => 'GET', 'header' => 'X-Bce-Signature-Key: ' . $apiKey . ':' . $secretKey, ], ]); $response = file_get_contents($url, false, $context); if ($response === false) { echo 'Error: ' . error_get_last()['message']; } else { echo $response; } ?>
上述代码中,我们首先定义了API Key和Secret Key,并设置了要请求的接口URL。接着,我们通过stream_context_create()
函数创建一个上下文,其中'http'
指定了请求的方法为GET,并设置了请求头信息,其中包括API Key和Secret Key。最后,我们通过file_get_contents()
函数发送请求,并通过比较返回的结果是否为false
rrreee
curl_init()
pour initialiser une session CURL et définir certaines options CURL via la fonction curl_setopt()
. Parmi eux, CURLOPT_URL
spécifie l'URL à laquelle accéder, CURLOPT_RETURNTRANSFER
est défini sur 1 pour renvoyer la valeur de retour de la requête sous la forme d'une chaîne, et CURLOPT_HEADER code> est défini sur 0. Indique qu'aucune information d'en-tête de réponse n'est renvoyée, <code>CURLOPT_TIMEOUT
définit le délai d'expiration et CURLOPT_HTTPHEADER
définit les informations d'en-tête de demande, y compris la clé API et la clé secrète. Ensuite, nous envoyons la requête via la fonction curl_exec()
et vérifions les erreurs via la fonction curl_errno()
. Enfin, nous fermons la session CURL en utilisant la fonction curl_close()
. Après avoir enregistré le fichier, nous pouvons obtenir le contenu de Yiyan en accédant au fichier hitokoto.php
. 🎜🎜Ce qui précède est une façon d’utiliser CURL. De plus, nous pouvons également utiliser la fonction file_get_contents()
de PHP pour y parvenir. 🎜🎜Modifiez le code du fichier hitokoto.php
comme suit : 🎜rrreee🎜Dans le code ci-dessus, nous définissons d'abord la clé API et la clé secrète, et définissons l'URL de l'interface à demander. Ensuite, nous créons un contexte via la fonction stream_context_create()
, où 'http'
spécifie la méthode de requête comme GET et définit les informations d'en-tête de la requête, y compris la clé API et le secret. Clé. Enfin, nous envoyons la requête via la fonction file_get_contents()
et déterminons si la requête réussit en comparant si le résultat renvoyé est false
. 🎜🎜Ce qui précède est un exemple de code pour implémenter le rappel asynchrone de l'interface Baidu Wenxin Yiyan dans le développement PHP. Grâce à ces méthodes, nous pouvons facilement obtenir le contenu de Yiyan et l'utiliser dans nos propres applications. J'espère que cet article vous aidera ! 🎜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!