Maison  >  Article  >  développement back-end  >  Le code PHP implémente la vérification de la sécurité de l'interface de l'API Baidu Wenxinyiyan

Le code PHP implémente la vérification de la sécurité de l'interface de l'API Baidu Wenxinyiyan

WBOY
WBOYoriginal
2023-08-27 15:28:451235parcourir

Le code PHP implémente la vérification de la sécurité de linterface de lAPI Baidu Wenxinyiyan

Le code PHP implémente la vérification de sécurité de l'interface de l'API Baidu Wenxin Yiyan

Lors du développement à l'aide de l'API Baidu Wenxin Yiyan, afin d'assurer la sécurité de l'interface et de réduire les requêtes malveillantes, nous pouvons ajouter l'interface dans le code Vérification de sécurité . Cet article explique comment utiliser le code PHP pour implémenter la vérification de la sécurité de l'interface de l'API Baidu Wenxin Yiyan.

Tout d'abord, nous devons comprendre les paramètres de demande d'interface de l'API Baidu Wenxin Yiyan. L'adresse de requête de l'interface est : http://api.lwl12.com/hitokoto/v1. Les paramètres de requête de l'interface comprennent :

  • c : le code d'identification de l'interface appelante
  • a : le nom de l'interface appelée.
  • s : l'interface Le code d'identification de l'appelant (c) de l'interface

signée peut être obtenu en postulant sur le site officiel de l'API Baidu Wenxin Yiyan. Le nom de l'interface appelante (a) peut être hitokoto, ce qui signifie obtenir un texte aléatoire.

La ou les signatures de l'interface permettent de vérifier la légitimité de la demande d'interface. La génération de signature nécessite l'utilisation du code d'identification de l'appelant et du nom de l'interface, ainsi qu'une clé privée préalablement convenue. Les règles de génération de signature sont les suivantes :

  1. Épisser le code d'identification de l'appelant et le nom de l'interface avec des virgules anglaises, telles que "code d'identification de l'appelant, nom de l'interface"
  2. Ajouter la clé privée à la fin de la chaîne épissée
  3. Appairez l'épissage La chaîne résultante est soumise au calcul de hachage MD5 pour obtenir la valeur signée

Ce qui suit est un exemple de code PHP implémentant la vérification de sécurité de l'interface de l'API Baidu Wenxin Yiyan :

<?php
// 定义调用方识别码、接口名称和私钥
$c = "调用方识别码";
$a = "hitokoto";
$secretKey = "私钥";

// 生成签名
$sign = md5($c . "," . $a . $secretKey);

// 构建请求参数
$params = [
    "c" => $c,
    "a" => $a,
    "s" => $sign
];

// 发起请求
$apiUrl = "http://api.lwl12.com/hitokoto/v1?" . http_build_query($params);
$response = file_get_contents($apiUrl);

// 处理接口返回结果
$data = json_decode($response, true);
if ($data && isset($data["data"]["hitokoto"])) {
    echo "随机的文心一言:{$data["data"]["hitokoto"]}";
} else {
    echo "获取文心一言失败";
}
?>

Dans l'exemple de code ci-dessus, nous d'abord définir l'identifiant de l'appelant, le nom de l'interface et la clé privée. Ces paramètres sont ensuite utilisés pour générer une signature pour l'interface. Ensuite, nous construisons les paramètres de requête, en ajoutant l'identifiant de l'appelant, le nom de l'interface et la signature aux paramètres de requête. Enfin, la fonction file_get_contents permet d'initier la requête d'interface et de traiter les résultats renvoyés par l'interface.

Grâce à la mise en œuvre du code ci-dessus, nous pouvons réaliser une vérification de sécurité de l'interface API Baidu Wenxin Yiyan. En développement réel, vous pouvez insérer ce code dans votre propre projet et effectuer les ajustements et extensions correspondants en fonction des besoins réels.

Résumé :
Cet article explique comment utiliser le code PHP pour implémenter la vérification de la sécurité de l'interface de l'API Baidu Wenxin Yiyan. En vérifiant le code d'identification de l'appelant, le nom de l'interface et la signature de l'interface, la sécurité de l'interface API peut être efficacement augmentée pour éviter les demandes malveillantes et les accès illégaux. En développement réel, une vérification de sécurité similaire peut être effectuée sur d’autres interfaces API basées sur cet exemple de code. J'espère que cet article sera utile à tout le monde !

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!

Déclaration:
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