摘要:微信小程序官方開(kāi)放了個(gè)創(chuàng)建二維碼的接口,其中有一個(gè)是生成二維碼的,還有一個(gè)是葵花狀的小程序碼,我這里就用生成二維碼。
微信小程序官方開(kāi)放了3個(gè)創(chuàng)建二維碼的接口,其中有一個(gè)是生成二維碼的,還有一個(gè)是葵花狀的小程序碼,我這里就用php生成二維碼。
首先要獲取Access_token這個(gè)請(qǐng)求起來(lái)也是很容易的,微信開(kāi)發(fā)文檔有請(qǐng)求接口:
要把自己的小程序的APPID和APPSECRET獲取到
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
access_token只有2小時(shí)有效期,所以要緩存最好,避免重復(fù)請(qǐng)求
構(gòu)建請(qǐng)求參數(shù)可以構(gòu)建一個(gè)數(shù)組,然后轉(zhuǎn)成json數(shù)據(jù)賦給一個(gè)變量
$param = json_encode(array("path"=>"pages/index/index?id=123","width"=> 150));
然后POST數(shù)據(jù)發(fā)送到微信服務(wù)器換取二維碼
完整代碼$_SESSION["expires_in"])) { $json = httpRequest( $access_token ); $json = json_decode($json,true); // var_dump($json); $_SESSION["access_token"] = $json["access_token"]; $_SESSION["expires_in"] = time()+7200; $ACCESS_TOKEN = $json["access_token"]; } else{ $ACCESS_TOKEN = $_SESSION["access_token"]; } //構(gòu)建請(qǐng)求二維碼參數(shù) //path是掃描二維碼跳轉(zhuǎn)的小程序路徑,可以帶參數(shù)?id=xxx //width是二維碼寬度 $qcode ="https://api.weixin.qq.com/cgi-bin/wxaapp/createwxaqrcode?access_token=$ACCESS_TOKEN"; $param = json_encode(array("path"=>"pages/index/index?id=123","width"=> 150)); //POST參數(shù) $result = httpRequest( $qcode, $param,"POST"); //生成二維碼 file_put_contents("qrcode.png", $result); $base64_image ="data:image/jpeg;base64,".base64_encode( $result ); //把請(qǐng)求發(fā)送到微信服務(wù)器換取二維碼 function httpRequest($url, $data="", $method="GET"){ $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0); curl_setopt($curl, CURLOPT_USERAGENT, $_SERVER["HTTP_USER_AGENT"]); curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($curl, CURLOPT_AUTOREFERER, 1); if($method=="POST") { curl_setopt($curl, CURLOPT_POST, 1); if ($data != "") { curl_setopt($curl, CURLOPT_POSTFIELDS, $data); } } curl_setopt($curl, CURLOPT_TIMEOUT, 30); curl_setopt($curl, CURLOPT_HEADER, 0); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); return $result; } ?>使用方法:
1、新建qrcode.php
2、拷貝上面代碼進(jìn)去
3、修改APPID和APPSECRET
4、訪問(wèn)qrcode.php
即可生成一個(gè)帶參數(shù)的小程序二維碼
但是這個(gè)接口生成的是有LOGO的小程序二維碼。
我們想要生成一個(gè)簡(jiǎn)簡(jiǎn)單單的,無(wú)LOGO的小程序二維碼可以嗎?
官方的是沒(méi)有辦法的,但是我們可以用第三方的接口生成普通的二維碼的方式。
1、先解碼,把剛才生成的小程序二維碼解碼,獲得URL
2、把獲得的URL用普通的二維碼生成接口生成普通的無(wú)LOGO的二維碼
解碼其實(shí)有很多的庫(kù)我這里直接用了第三方的JSSDK解碼,免費(fèi)的,需要申請(qǐng)接口和appid和appkey
生成無(wú)LOGO二維碼
PHP生成微信小程序二維碼 相關(guān)文章
PHP生成微信小程序二維碼,可生成帶參數(shù)二維碼。
摘要:微信小程序官方開(kāi)放了個(gè)創(chuàng)建二維碼的接口,其中有一個(gè)是生成二維碼的,還有一個(gè)是葵花狀的小程序碼,我這里就用生成二維碼。 微信小程序官方開(kāi)放了3個(gè)創(chuàng)建二維碼的接口,其中有一個(gè)是生成二維碼的,還有一個(gè)是葵花狀的小程序碼,我這里就用php生成二維碼。 首先要獲取Access_token 這個(gè)請(qǐng)求起來(lái)也是很容易的,微信開(kāi)發(fā)文檔有請(qǐng)求接口:要把自己的小程序的APPID和APPSECRET獲取到 h...
通過(guò)小程序實(shí)現(xiàn)網(wǎng)站掃碼登錄!每年都可以省 300 塊...代替微信開(kāi)放平臺(tái)和服務(wù)號(hào)的登陸模式!
摘要:微信開(kāi)放平臺(tái)要認(rèn)證開(kāi)發(fā)者,需要塊年,微信服務(wù)號(hào)也需要提交企業(yè)資料認(rèn)證,需要塊年。免費(fèi)的方法來(lái)了既然微信開(kāi)放平臺(tái)和微信認(rèn)證的服務(wù)號(hào)每年都需要塊認(rèn)證費(fèi),個(gè)人學(xué)習(xí)不舍得,沒(méi)資料,那么咱們把矛頭指向微信小程序了。 我們知道,要接入微信登陸有兩種方式 1、微信開(kāi)放平臺(tái)2、微信服務(wù)號(hào) 這兩種方式均可生成帶參數(shù)的二維碼,然后掃碼獲取用戶基本信息的,所以我們可以在網(wǎng)站上用這兩種方式開(kāi)發(fā)網(wǎng)站的掃碼登錄,...
微信小程序碼生成及可能存在的坑
摘要:換句話說(shuō),同一用戶,對(duì)同一個(gè)微信開(kāi)放平臺(tái)下的不同應(yīng)用,是相同的對(duì)于,微信程序碼在同一時(shí)間用來(lái)掉用小程序碼生成接口使用以及調(diào)用生成一個(gè)應(yīng)用只有一個(gè)秘鑰,只有一個(gè)有效,且有效期是分鐘。 小程序二維碼的生成有三個(gè)不同的接口,針對(duì)不同的場(chǎng)景需求下文介紹的是第二種,也是用的最多的一種:適用于需要的碼數(shù)量極多,或僅臨時(shí)使用的業(yè)務(wù)場(chǎng)景接口地址:https://api.weixin.qq.com/wx...
微信小程序集成 Jenkins
摘要:總結(jié)本文以微信小程序常規(guī)的發(fā)布流程為切入點(diǎn),循序漸進(jìn)地介紹了如何集成實(shí)現(xiàn)微信小程序預(yù)覽上傳功能。 showImg(https://raw.githubusercontent.com/yingye/Blog/master/images/wechat-jenkins.png); 本文首發(fā)于 https://github.com/yingye/Blo... ,歡迎各位關(guān)注我的Blog,正文以...
微信小程序生成二維碼工具
摘要:微信小程序生成二維碼工具生成二維碼數(shù)據(jù)的主要代碼來(lái)自,因?yàn)樗@個(gè)里面生成二維碼圖片的功能在微信小程序里不能使用,我將這個(gè)功能改寫(xiě)成可以在微信小程序中使用。 weapp-qrcode 微信小程序生成二維碼工具 生成二維碼數(shù)據(jù)的主要代碼來(lái)自davidshimjs/qrcodejs,因?yàn)樗@個(gè)里面生成二維碼圖片的功能在微信小程序里不能使用,我將這個(gè)功能改寫(xiě)成可以在微信小程序中使用。 截圖 s...
發(fā)表評(píng)論
0條評(píng)論
閱讀 3680·2021-11-22 09:34
閱讀 3216·2021-11-15 11:38
閱讀 3146·2021-10-27 14:16
閱讀 1297·2021-10-18 13:35
閱讀 2456·2021-09-30 09:48
閱讀 3464·2021-09-29 09:34
閱讀 1733·2019-08-30 15:54
閱讀 1848·2019-08-26 11:57