Comment l'applet WeChat génère-t-elle les codes QR de paramètres ? L'article suivant vous présentera comment un petit programme génère des codes QR de paramètres. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il sera utile à tout le monde.
Le code QR paramètre, comme son nom l'indique, est un code QR avec des paramètres. Étant donné que les paramètres ne sont pas fixes, le code QR avec les paramètres doit changer en fonction des paramètres et différents codes QR sont générés en fonction de différents paramètres.
Les codes QR de paramètres sont utilisés dans de nombreux petits programmes. Par exemple, s'il s'agit d'un petit programme de création de CV, il devra probablement fournir aux utilisateurs les fonctions suivantes : télécharger leurs propres CV et générer leurs propres codes QR. Pour un autre exemple, un petit programme de production d'album photo en ligne doit fournir un code QR à l'utilisateur une fois la production terminée, afin que n'importe qui puisse scanner le code pour afficher le contenu de l'album. Ce sont les véritables scénarios d’application des codes QR paramétriques. Dans le didacticiel de développement de mini-programmes d'aujourd'hui, nous expliquerons comment le mini-programme WeChat génère des codes QR de paramètres.
Tout d'abord, l'adresse officielle de l'interface de WeChat pour obtenir l'API de la mini page du programme est la suivante :
https://api.weixin .qq.com/cgi-bin/wxapp/createwxaqrcode?access_token=ACCESS_TOKEN
Étant donné que l'API de code QR des paramètres du mini-programme fournit une aide limitée, voici comment procéder. Je l'implémente principalement via l'interface backend de thinkphp. Le code spécifique est le suivant :
Étape 1, obtenez d'abord ACCESS_TOKEN
$tokenUrl=https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=.$this->appid.&secret=.$this->secret; $getArr=array(); $tokenArr=json_decode($this->send_post($tokenUrl,$getArr,GET)); $access_token=$tokenArr->access_token;
send_post :
function send_post($url, $post_data,$method=\'POST\') { $postdata = http_build_query($post_data); $options = array( \'http\' => array( \'method\' => $method, //or GET \'header\' => \'Content-type:application/x-www-form-urlencoded\', \'content\' => $postdata, \'timeout\' => 15 * 60 // 超时时间(单位:s) ) ); $context = stream_context_create($options); $result = file_get_contents($url, false, $context); return $result; }
Étape 2, générer le code QR :
$path=pages/index?query=1; $width=430; $post_data=\'{path:\'.$path.\',width:\'.$width.\'}\'; $url=https://api.weixin.qq.com/cgi-bin/wxaapp/createwxaqrcode?access_token=.$access_token; $result=$this->api_notice_increment($url,$post_data);
api_notice_increment:
function api_notice_increment($url, $data){ $ch = curl_init(); $header = Accept-Charset: utf-8; curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_CUSTOMREQUEST, POST); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt($curl, CURLOPT_HTTPHEADER, $header); curl_setopt($ch, CURLOPT_USERAGENT, \'Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)\'); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_AUTOREFERER, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $tmpInfo = curl_exec($ch); // var_dump($tmpInfo); // exit; if (curl_errno($ch)) { return false; }else{ // var_dump($tmpInfo); return $tmpInfo; } }
Étape 3, générez une image basée sur les données binaires renvoyées et téléchargez-la sur votre propre serveur
file_put_contents($filepath, $result)
Différentes personnes utilisent différents serveurs. Cela implique la confidentialité, donc je ne publierai pas le code de téléchargement.
Recommandé : "Tutoriel de développement de mini-programmes"
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!