>  기사  >  백엔드 개발  >  PHP를 사용하여 WeChat 공개 계정 API 인터페이스 구축

PHP를 사용하여 WeChat 공개 계정 API 인터페이스 구축

PHPz
PHPz원래의
2023-05-13 12:01:351095검색

오늘날의 인터넷 시대에 WeChat 공식 계정은 점점 더 많은 회사의 중요한 마케팅 채널이 되었습니다. WeChat 공식 계정에 더 많은 기능을 구현하려면 해당 인터페이스를 작성해야 하는 경우가 많습니다. 이 기사에서는 PHP 언어를 예로 들어 WeChat 공개 계정 API 인터페이스를 구축하는 방법을 소개합니다.

1. 준비

WeChat 공식 계정 API 인터페이스를 작성하기 전에 개발자는 WeChat 공식 계정을 보유하고 WeChat 공식 플랫폼에서 개발자 인터페이스 권한을 신청해야 합니다. 신청이 성공하면 관련 개발자 AppID와 AppSecret을 얻을 수 있습니다.

둘째, 기본적인 PHP 언어 프로그래밍 지식도 이해하고 WeChat 공개 계정 개발과 관련된 API 인터페이스 호출 방법에 익숙해야 합니다.

2. WeChat 액세스 토큰 얻기

API 인터페이스를 통해 WeChat 공개 계정 사용자의 관련 정보를 얻기 전에 먼저 액세스 토큰을 얻어야 합니다. 액세스 토큰은 WeChat 공식 계정의 신원을 나타내는 문자열입니다. 액세스 토큰마다 권한이 다릅니다.

WeChat 액세스 토큰을 얻기 위한 인터페이스 주소는 https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET입니다. APPID와 APPSECRET은 각각 개발자 인터페이스 권한을 신청할 때 얻은 AppID와 AppSecret입니다.

우리는 PHP의 cURL 확장 라이브러리를 통해 HTTP 요청을 보내 액세스 토큰의 가치를 얻을 수 있습니다. 구체적인 코드는 다음과 같습니다.

function getAccessToken($appid, $appsecret) {
  $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=$appid&secret=$appsecret";
  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, $url);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
  $output = curl_exec($ch);
  curl_close($ch);
  $json = json_decode($output, TRUE);
  $access_token = $json["access_token"];
  return $access_token;
}

3. WeChat API 인터페이스를 사용하여 사용자 정보 획득

WeChat 액세스 토큰을 획득한 후 WeChat 오픈 플랫폼에서 제공하는 API 인터페이스를 사용하여 사용자 정보를 획득할 수 있습니다. 서로 다른 API 인터페이스는 서로 다른 세부 정보를 얻을 수 있습니다. 여기서는 기본 사용자 정보 가져오기를 예로 들어보겠습니다.

WeChat API 인터페이스를 사용하여 기본 사용자 정보를 얻기 위한 인터페이스 주소는 https://api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN입니다. 그 중 ACCESS_TOKEN은 이전에 획득한 Access Token이고, OPENID는 대상 사용자의 openid, lang은 언어 버전입니다.

마찬가지로 PHP의 cURL 확장 라이브러리를 통해 HTTP 요청을 보내 기본 사용자 정보를 얻을 수 있습니다. 구체적인 코드는 다음과 같습니다.

function getUserInfo($access_token, $openid) {
  $url = "https://api.weixin.qq.com/cgi-bin/user/info?access_token=$access_token&openid=$openid&lang=zh_CN";
  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, $url);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
  $output = curl_exec($ch);
  curl_close($ch);
  $json = json_decode($output, TRUE);
  return $json;
}

4. API 인터페이스에 통합 및 테스트

마지막으로 앞서 작성한 액세스 토큰 및 사용자 정보를 얻기 위한 코드를 API 인터페이스에 통합합니다. API 인터페이스는 모든 웹 개발 프레임워크를 사용하여 구현할 수 있습니다. 여기서는 Lumen 마이크로프레임워크를 예로 들어 보겠습니다.

// routes/web.php
$app->get('/wechat-api/user-info/{openid}', function($openid) use ($app) {
  $appid = 'your_appid';
  $appsecret = 'your_appsecret';
  $access_token = getAccessToken($appid, $appsecret);
  $user_info = getUserInfo($access_token, $openid);
  return response()->json($user_info);
});

// app/functions.php
function getAccessToken($appid, $appsecret) {
  $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=$appid&secret=$appsecret";
  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, $url);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
  $output = curl_exec($ch);
  curl_close($ch);
  $json = json_decode($output, TRUE);
  $access_token = $json["access_token"];
  return $access_token;
}

function getUserInfo($access_token, $openid) {
  $url = "https://api.weixin.qq.com/cgi-bin/user/info?access_token=$access_token&openid=$openid&lang=zh_CN";
  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, $url);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
  $output = curl_exec($ch);
  curl_close($ch);
  $json = json_decode($output, TRUE);
  return $json;
}

Lumen 애플리케이션을 시작하고 API 인터페이스를 테스트하세요.

php -S localhost:8000 -t public

http://localhost:8000/wechat-api/user-info/your_openid

위는 PHP를 사용하여 WeChat 공식 계정 API 인터페이스를 구축하는 전체 프로세스입니다. 위의 단계를 통해 WeChat 사용자의 기본 정보를 쉽게 확보하여 WeChat 공식 계정에 더 많은 기능을 구현할 수 있습니다.

위 내용은 PHP를 사용하여 WeChat 공개 계정 API 인터페이스 구축의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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