成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

PHP生成微信小程序二維碼,可生成帶參數(shù)二維碼。

afishhhhh / 1285人閱讀

摘要:微信小程序官方開放了個(gè)創(chuàng)建二維碼的接口,其中有一個(gè)是生成二維碼的,還有一個(gè)是葵花狀的小程序碼,我這里就用生成二維碼。

微信小程序官方開放了3個(gè)創(chuàng)建二維碼的接口,其中有一個(gè)是生成二維碼的,還有一個(gè)是葵花狀的小程序碼,我這里就用php生成二維碼。

首先要獲取Access_token

這個(gè)請求起來也是很容易的,微信開發(fā)文檔有請求接口:
要把自己的小程序的APPID和APPSECRET獲取到

https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET

access_token只有2小時(shí)有效期,所以要緩存最好,避免重復(fù)請求

構(gòu)建請求參數(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)建請求二維碼參數(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 );

//把請求發(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、訪問qrcode.php

即可生成一個(gè)帶參數(shù)的小程序二維碼

但是這個(gè)接口生成的是有LOGO的小程序二維碼。
我們想要生成一個(gè)簡簡單單的,無LOGO的小程序二維碼可以嗎?
官方的是沒有辦法的,但是我們可以用第三方的接口生成普通的二維碼的方式。

生成無LOGO二維碼步驟

1、先解碼,把剛才生成的小程序二維碼解碼,獲得URL
2、把獲得的URL用普通的二維碼生成接口生成普通的無LOGO的二維碼

1、解碼

解碼其實(shí)有很多的庫我這里直接用了第三方的JSSDK解碼,免費(fèi)的,需要申請接口和appid和appkey

生成無LOGO二維碼

PHP生成微信小程序二維碼

上面是通過js來實(shí)現(xiàn)的解碼,解碼還是調(diào)用了php生成的二維碼的一個(gè)圖片地址的

上面是調(diào)用本地圖片,所以需要結(jié)合php生成小程序二維碼的代碼使用這個(gè)解碼程序。

解碼后需要生成無LOGO的二維碼,這個(gè)我只需要調(diào)用一個(gè)接口就行。
接口:http://qr.liantu.com/api.php?...

然后拼接解碼后的url就可以生成一個(gè)二維碼了。

那么生成小程序碼和生成無LOGO二維碼的代碼結(jié)合起來就是:

 $_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)建請求二維碼參數(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 );

//把請求發(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;
  } 

?>

生成小程序官方二維碼


生成無LOGO二維碼

PHP生成微信小程序二維碼

但是解碼需要用到的兩個(gè)js庫
這里直接提供下載地址:https://pan.baidu.com/s/1UYDj...

作者:TANKING
2018-7-13
學(xué)習(xí)交流微信:face6009

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/29031.html

相關(guān)文章

  • PHP生成信小程序維碼,可生成參數(shù)維碼。

    摘要:微信小程序官方開放了個(gè)創(chuàng)建二維碼的接口,其中有一個(gè)是生成二維碼的,還有一個(gè)是葵花狀的小程序碼,我這里就用生成二維碼。 微信小程序官方開放了3個(gè)創(chuàng)建二維碼的接口,其中有一個(gè)是生成二維碼的,還有一個(gè)是葵花狀的小程序碼,我這里就用php生成二維碼。 首先要獲取Access_token 這個(gè)請求起來也是很容易的,微信開發(fā)文檔有請求接口:要把自己的小程序的APPID和APPSECRET獲取到 h...

    jsliang 評論0 收藏0
  • 通過小程序實(shí)現(xiàn)網(wǎng)站掃碼登錄!每年都可以省 300 塊...代替微信開放平臺和服務(wù)號的登陸模式!

    摘要:微信開放平臺要認(rèn)證開發(fā)者,需要塊年,微信服務(wù)號也需要提交企業(yè)資料認(rèn)證,需要塊年。免費(fèi)的方法來了既然微信開放平臺和微信認(rèn)證的服務(wù)號每年都需要塊認(rèn)證費(fèi),個(gè)人學(xué)習(xí)不舍得,沒資料,那么咱們把矛頭指向微信小程序了。 我們知道,要接入微信登陸有兩種方式 1、微信開放平臺2、微信服務(wù)號 這兩種方式均可生成帶參數(shù)的二維碼,然后掃碼獲取用戶基本信息的,所以我們可以在網(wǎng)站上用這兩種方式開發(fā)網(wǎng)站的掃碼登錄,...

    rickchen 評論0 收藏0
  • 信小程序生成及可能存在的坑

    摘要:換句話說,同一用戶,對同一個(gè)微信開放平臺下的不同應(yīng)用,是相同的對于,微信程序碼在同一時(shí)間用來掉用小程序碼生成接口使用以及調(diào)用生成一個(gè)應(yīng)用只有一個(gè)秘鑰,只有一個(gè)有效,且有效期是分鐘。 小程序二維碼的生成有三個(gè)不同的接口,針對不同的場景需求下文介紹的是第二種,也是用的最多的一種:適用于需要的碼數(shù)量極多,或僅臨時(shí)使用的業(yè)務(wù)場景接口地址:https://api.weixin.qq.com/wx...

    546669204 評論0 收藏0
  • 信小程序集成 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,正文以...

    young.li 評論0 收藏0
  • 信小程序生成維碼工具

    摘要:微信小程序生成二維碼工具生成二維碼數(shù)據(jù)的主要代碼來自,因?yàn)樗@個(gè)里面生成二維碼圖片的功能在微信小程序里不能使用,我將這個(gè)功能改寫成可以在微信小程序中使用。 weapp-qrcode 微信小程序生成二維碼工具 生成二維碼數(shù)據(jù)的主要代碼來自davidshimjs/qrcodejs,因?yàn)樗@個(gè)里面生成二維碼圖片的功能在微信小程序里不能使用,我將這個(gè)功能改寫成可以在微信小程序中使用。 截圖 s...

    Rocture 評論0 收藏0

發(fā)表評論

0條評論

閱讀需要支付1元查看
<