Maison >développement back-end >tutoriel php >Implémentation du code du jeton d'obtention php (WeChat)
Le contenu de cet article concerne l'implémentation du code de l'acquisition de jetons PHP (WeChat). Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.
Description de la demande d'appel de l'interface
https请求方式: GET https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
Description du paramètre
参数 | 是否必须 | 说明 |
---|---|---|
grant_type | 是 | 获取access_token填写client_credential |
appid | 是 | 第三方用户唯一凭证 |
secret | 是 | 第三方用户唯一凭证密钥,即appsecret |
Description du retour
Dans des circonstances normales, WeChat renverra le paquet de données JSON suivant au compte public :
{"access_token":"ACCESS_TOKEN","expires_in":7200}
Description du paramètre
参数 | 说明 |
---|---|
access_token | 获取到的凭证 |
expires_in | 凭证有效时间,单位:秒 |
Ce qui précède est le document access_token pour le compte public de WeChat. Ce chapitre explique brièvement comment obtenir le token en PHP et à quoi faire attention
1 Les paramètres préparés nécessitent l'appid et le secret du compte public. , et en même temps Notez qu'une fois le secret modifié, ce que vous enregistrez doit également être modifié, il n'est donc pas recommandé de le modifier, enregistrez-le simplement.
2. Vous devez créer une liste blanche, qui peut être obtenue en fonction de l'adresse IP du serveur. Si vous ne la connaissez vraiment pas, cela n'a pas d'importance, car vous pouvez connaître la vôtre. IP basée sur l'erreur signalée par l'interface WeChat, puis configurez-la.
3. Le nombre d'appels access_token par jour est valide si je me souviens bien, c'est 2K fois par jour, mais un token est valable 2 heures, il faut donc mettre en cache un token pendant 2 heures pour que il ne dépasse pas le nombre d'appels de l'interface.
<?php public function getAccessToken($appid,$secret){ $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={$appid}&secret={$secret}"; $res = $this->curl_get($url); $res = json_decode($res,1); if($res['errcode']!=0) throw new Exception($res['errmsg']); return $res['access_token']; } public function curl_get($url) { $headers = array('User-Agent:Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.81 Safari/537.36'); $oCurl = curl_init(); if(stripos($url,"https://")!==FALSE){ curl_setopt($oCurl, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($oCurl, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt($oCurl, CURLOPT_SSLVERSION, 1); //CURL_SSLVERSION_TLSv1 } curl_setopt($oCurl, CURLOPT_TIMEOUT, 20); curl_setopt($oCurl, CURLOPT_URL, $url); curl_setopt($oCurl, CURLOPT_HTTPHEADER, $headers); curl_setopt($oCurl, CURLOPT_RETURNTRANSFER, 1 ); $sContent = curl_exec($oCurl); $aStatus = curl_getinfo($oCurl); curl_close($oCurl); if(intval($aStatus["http_code"])==200){ return $sContent; }else{ return false; } }
Ce qui précède est le code permettant à php d'obtenir un jeton, ce qui est relativement simple.
Recommandations associées :
Applet WeChat Obtenez une explication détaillée et un exemple de code de WeChat OpenId
Code d'implémentation PHP pour obtenir le serveur informations
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!