>  기사  >  백엔드 개발  >  PHP 코드는 Baidu Wenxinyiyan API의 인터페이스 보안 검증을 구현합니다.

PHP 코드는 Baidu Wenxinyiyan API의 인터페이스 보안 검증을 구현합니다.

WBOY
WBOY원래의
2023-08-27 15:28:451208검색

PHP 코드는 Baidu Wenxinyiyan API의 인터페이스 보안 검증을 구현합니다.

PHP 코드는 Baidu Wenxin Yiyan API의 인터페이스 보안 검증을 구현합니다

Baidu Wenxin Yiyan API를 사용하여 개발할 때 인터페이스의 보안을 보장하고 악의적인 요청을 줄이기 위해 코드 안전 검증에 인터페이스를 추가할 수 있습니다. . 이 기사에서는 PHP 코드를 사용하여 Baidu Wenxin Yiyan API의 인터페이스 보안 검증을 구현하는 방법을 소개합니다.

우선 Baidu Wenxin Yiyan API의 인터페이스 요청 매개변수를 이해해야 합니다. 인터페이스 요청 주소는 http://api.lwl12.com/hitokoto/v1입니다. 인터페이스의 요청 매개변수에는 다음이 포함됩니다.

  • c: 인터페이스 호출자의 식별 코드
  • a: 호출된 인터페이스의 이름
  • s: 인터페이스 서명된

인터페이스의 발신자 식별 코드(c)는 Baidu Wenxin Yiyan API 공식 웹사이트에서 신청하여 얻을 수 있습니다. 호출 인터페이스(a)의 이름은 hitokoto일 수 있으며 이는 임의의 텍스트를 얻는다는 의미입니다.

인터페이스의 서명은 인터페이스 요청의 적법성을 확인하는 데 사용됩니다. 서명을 생성하려면 발신자 식별 코드와 인터페이스 이름은 물론 사전 동의된 개인 키를 사용해야 합니다. 서명 생성 규칙은 다음과 같습니다.

  1. "발신자 식별 코드, 인터페이스 이름"과 같이 발신자 식별 코드와 인터페이스 이름을 영문 쉼표로 연결합니다.
  2. 연결된 문자열 끝에 개인 키를 추가합니다
  3. 페어링 스플라이싱 결과 문자열은 MD5 해시 계산을 거쳐 서명된 값을 얻습니다.

다음은 Baidu Wenxin Yiyan API의 인터페이스 보안 확인을 구현하는 PHP 코드의 예입니다.

<?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 "获取文心一言失败";
}
?>

위의 예 코드에서 먼저 통화 당사자 식별자, 인터페이스 이름 및 개인 키를 정의합니다. 그런 다음 이러한 매개변수는 인터페이스에 대한 서명을 생성하는 데 사용됩니다. 다음으로 요청 매개변수를 작성하고 호출자 식별자, 인터페이스 이름 및 서명을 요청 매개변수에 추가합니다. 마지막으로 file_get_contents 함수는 인터페이스 요청을 시작하고 인터페이스에서 반환된 결과를 처리하는 데 사용됩니다.

위 코드 구현을 통해 Baidu Wenxin Yiyan API 인터페이스의 보안 검증을 달성할 수 있습니다. 실제 개발에서는 이 코드를 자신의 프로젝트에 넣고 실제 필요에 따라 해당 조정 및 확장을 수행할 수 있습니다.

요약:
이 글에서는 PHP 코드를 사용하여 Baidu Wenxin Yiyan API의 인터페이스 보안 검증을 구현하는 방법을 소개합니다. 호출자 식별 코드, 인터페이스 이름 및 인터페이스 서명을 확인함으로써 API 인터페이스의 보안을 효과적으로 강화하여 악의적인 요청 및 불법 액세스를 방지할 수 있습니다. 실제 개발에서는 이 샘플 코드를 기반으로 다른 API 인터페이스에서도 유사한 보안 검증을 수행할 수 있습니다. 이 글이 모두에게 도움이 되기를 바랍니다!

위 내용은 PHP 코드는 Baidu Wenxinyiyan API의 인터페이스 보안 검증을 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.