이 글에서는 주로 PHP 예약 작업으로 WeChat access_token을 얻는 방법을 소개합니다. CentOS에서 컬 및 crontab 설정 예약 작업을 기반으로 access_token을 동적으로 가져오는 PHP의 관련 작업 기술이 필요한 친구가 참고할 수 있습니다.
WeChat access_token은 변경됩니다. 개발 중에는 조금 다른 것 같습니다. 여기서는 PHP 예약 작업으로 WeChat access_token을 얻는 방법을 소개하겠습니다.
WeChat 공개 플랫폼이 최근 개발되었습니다. 공개 계정은 각 인터페이스를 호출할 때 access_token을 사용해야 합니다. Access_token은 공개 계정의 자격 증명을 호출하는 전역적으로 고유한 인터페이스이며 개발 중에 적절하게 저장되어야 합니다. access_token은 7200초 동안 유효합니다. 반복적으로 획득하면 마지막 access_token이 무효화됩니다.
WeChat은 access_token을 얻기 위한 API 호출 수를 제한하므로 개발자는 access_token을 전역적으로 저장하고 업데이트하는 것이 좋습니다. access_token을 자주 새로 고치면 API 호출이 제한되고 비즈니스에 영향을 미칠 수 있습니다.
그렇다면 access_token 저장 및 갱신을 위한 좋은 솔루션은 무엇일까요? 내 접근 방식은 정기적으로 새로 고치도록 작업을 예약하여 access_token을 얻은 다음 access_token을 서버에 로컬로 저장하는 것입니다. 저장 방법은 파일, 데이터베이스 또는 캐시일 수 있습니다.
아래에서는 PHP를 사용하여 access_token을 가져와 로컬 파일에 저장합니다. 다음 코드로 access.php를 생성합니다:
$url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".AppID."&secret=".AppSecret; $result = http_request($url); //生成文件,保存token $dir = __DIR__; //真实路径,crontab命令的php执行在cli模式下,不能正确识别相对路径,所以使用__DIR__ $filename = $dir."/access_token.php"; create_file($filename, $result); function http_request($url,$data = null){ $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE); if (!empty($data)){ curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $data); } curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $output = curl_exec($curl); curl_close($curl); return $output; } //生成文件 function create_file($filename, $content){ $fp = fopen($filename, "w"); fwrite($fp, "" . $content); fclose($fp); }
위 코드의 두 상수 AppID 및 AppSecret은 WeChat 공개 플랫폼에서 제공되며 WeChat 공개 플랫폼의 기본 구성에 로그인하면 얻을 수 있습니다. . 획득한 access_token은 access_token.php 파일에 저장됩니다. 이 파일의 내용은 사용자가 접근해서는 안 됩니다.
다음으로 예약된 작업을 설정합니다. Linux의 CentOS를 예로 들어 crontab을 사용하여 예약된 작업을 설정합니다.
5 * * * * /usr/local/bin/php -f /home/web/access.php >> /dev/null 2>&1
위 명령은 access.php가 1시간마다, 즉 매시간 05분에 실행되도록 설정합니다.
이러한 방식으로 WeChat 서버를 자주 새로 고치지 않고도 access_token의 정상적인 획득 및 사용을 보장할 수 있습니다.
요약: 위 내용은 이 글의 전체 내용입니다. 모든 분들의 공부에 도움이 되었으면 좋겠습니다.
관련 권장 사항:
php array_merge_recursive 배열 병합
위 내용은 PHP 예약 작업을 사용하여 WeChat access_token을 얻는 방법 공유 예의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!