国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Java 獲取小程序碼的兩種方式

這篇具有很好參考價值的文章主要介紹了Java 獲取小程序碼的兩種方式。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

目前小程序推出了自己的識別碼,小程序碼,圓形的碼看起來比二維碼好看。

本文總結(jié)微信小程序的獲取小程序二維碼的接口開發(fā)。官方地址

主要內(nèi)容摘抄自微信小程序的API文檔,java接口開發(fā)是自己總結(jié)開發(fā)。

一、簡介

通過后臺接口可以獲取小程序任意頁面的二維碼,掃描該二維碼可以直接進入小程序?qū)?yīng)的頁面。

目前微信支持兩種二維碼,小程序碼(左),小程序二維碼(右),如下所示:這篇文章主要講解的是獲取小程序碼的兩種方式。

獲取<小程序碼>的前提

必須獲取小程序的TOKEN

獲取 access_token
詳見文檔

?

/**
  * 獲取token
  * @param url
  * @param grantType
  * @param appid
  * @param secret
  * @return
  */
 public static String getAccessToken(String url,String grantType,String appid,String secret){
     String access_token = "";
     String tokenUrl = url+"?grant_type="+ grantType+"&appid="+ appid + "&secret="+ secret;
     Object result = HttpUtils.doGet(tokenUrl);
     JSONObject jsons = JSONObject.parseObject(result.toString());
     String expires_in = jsons.getString("expires_in");
     if(BL3Utils.isNotEmpty(expires_in)&&Integer.parseInt(expires_in)==7200){
         //ok
         access_token = jsons.getString("access_token");
     }else{
         System.out.println("出錯獲取token失敗!");
     }
     return access_token;
 }

參數(shù)介紹:

1.url :https://api.weixin.qq.com/cgi-bin/token
2.grantType: client_credential
3.appid:小程序appid,微信公眾平臺注冊小程序時自動生成的。
4.secret:小程序secret,微信公眾平臺注冊小程序時自動生成的。
5.url 和grantType參數(shù)官網(wǎng)其實有介紹的。

獲取小程序碼的兩種方式

目前有兩個接口可以生成小程序碼,開發(fā)者可以根據(jù)自己的需要選擇合適的接口

第一種

  1. 適用于需要的碼數(shù)量較少的業(yè)務(wù)場景
  2. 是呢不帶參數(shù)有限個小程序碼接口
  3. 總共生成的碼數(shù)量限制為100,000,請謹慎調(diào)用。

接口地址:

https://api.weixin.qq.com/wxa/getwxacode?access_token=ACCESS_TOKEN

(1)POST 參數(shù)說明

參數(shù) 類型 默認值 說明
path String 不能為空,最大長度 128 字節(jié)
width Int 430 二維碼的寬度
auto_color Bool false 自動配置線條顏色,如果顏色依然是黑色,則說明不建議配置主色調(diào)
line_color Object {“r”:”0”,”g”:”0”,”b”:”0”} auth_color 為 false 時生效,使用 rgb
設(shè)置顏色 例如 {“r”:”xxx”,”g”:”xxx”,”b”:”xxx”}

注意:通過該接口生成的小程序碼,永久有效,但數(shù)量有效,請謹慎使用。用戶掃描該碼進入小程序后,將直接進入 path 對應(yīng)的頁面。

(2)請求接口測試

使用http請求插件postman或者RESTClient請求測試。

請求測試結(jié)果返回一個小程序碼圖片,與微信公眾平臺生成二維碼不同,小程序碼直接返回文件流,不是微信公眾平臺的url和ticket。

(3)java接口開發(fā)

    /**
     1. 帶參數(shù)有限個數(shù)小程序碼接口
     2. @param url
     3. @param access_token
     4. @param path
     5. @param width
     6. @return
     */
     public static InputStream getwxacode(String url,String access_token,String path,String width){
         url = url + "?access_token=" + access_token;
         JSONObject jsonParam = new JSONObject();
         jsonParam.put("path", path);
         jsonParam.put("width", Integer.parseInt(width));
         jsonParam.put("auto_color", false);
         Map<String,Object> line_color = new HashMap<>();
         line_color.put("r", 0);
         line_color.put("g", 0);
         line_color.put("b", 0);
         jsonParam.put("line_color", line_color);
         InputStream instreams = HttpUtils.doWXPost(url, jsonParam);
         if(BL3Utils.isEmpty(instreams)){
             System.out.println("出錯獲取二維碼失?。?);
         }
         return instreams;
     }

參數(shù)說明

1.url : https://api.weixin.qq.com/wxa/getwxacode

2.access_token:上面有介紹(getAccessToken這個方法)

3.path:用戶掃描該碼進入小程序后,將直接進入 path 對應(yīng)的頁面;一般是首頁地址:”pages/index/index”
也可以帶上參數(shù):”pages/index/index?query=1”。

4.width:二維碼的寬度 int類型 默認 430

第二種

  1. 適用于需要的碼數(shù)量極多的業(yè)務(wù)場景
  2. 沒有數(shù)量限制呢
  3. 帶參數(shù)

接口地址:

https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=ACCESS_TOKEN

(1)POST 參數(shù)說明

參數(shù) 類型 默認值 說明
scene String
最大32個可見字符,只支持數(shù)字,大小寫英文以及部分特殊字符:!#$&’()*+,/:;=?@-._~,其它字符請自行編碼為合法字符(因不支持%,中文無法使用
urlencode 處理,請使用其他編碼方式)
page String 必須是已經(jīng)發(fā)布的小程序頁面,例如 “pages/index/index” ,如果不填寫這個字段,默認跳主頁面
width Int 430 二維碼的寬度
auto_color Bool false 自動配置線條顏色,如果顏色依然是黑色,則說明不建議配置主色調(diào)
line_color Object {“r”:”0”,”g”:”0”,”b”:”0”} auto_color 為 false 時生效,使用 rgb
設(shè)置顏色 例如 {“r”:”xxx”,”g”:”xxx”,”b”:”xxx”}

注意:通過該接口生成的小程序碼,永久有效,數(shù)量暫無限制。用戶掃描該碼進入小程序后,開發(fā)者需在對應(yīng)頁面獲取的碼中 scene
字段的值,再做處理邏輯。使用如下代碼可以獲取到二維碼中的 scene 字段的值。調(diào)試階段可以使用開發(fā)工具的條件編譯自定義參數(shù) scene=xxxx
進行模擬,開發(fā)工具模擬時的 scene 的參數(shù)值需要進行 urlencode。同時需要注意,此接口的page參數(shù)中不能帶任何參數(shù),參數(shù)都在scene
參數(shù)中處理,切記?。?!

// 這是首頁的 js  
 Page({  
 onLoad: function(options) {  
 // options 中的 scene 需要使用 decodeURIComponent 才能獲取到生成二維碼時傳入的 scene  
 var scene = decodeURIComponent(options.scene)  
 }  
 })

(2)請求接口測試

(3)java接口開發(fā)

    /**
      * 帶參數(shù)無限個數(shù)小程序碼接口
      * @param url
      * @param access_token
      * @param path
      * @param width
      * @return
      */
      public static InputStream getwxacodeunlimit(String url,String access_token,String path,String width){
          String[] str = path.split("[?]");
          path = str[0];
          String scene = str[1];
          url = url + "?access_token=" + access_token;
          // 接收參數(shù)json列表
          JSONObject jsonParam = new JSONObject();
          jsonParam.put("scene", scene);
          jsonParam.put("page", path);
          jsonParam.put("width", Integer.parseInt(width));
          jsonParam.put("auto_color", false);
          Map<String,Object> line_color = new HashMap<>();
          line_color.put("r", 0);
          line_color.put("g", 0);
          line_color.put("b", 0);
          jsonParam.put("line_color", line_color);
          InputStream instreams = HttpUtils.doWXPost(url, jsonParam);
          if(BL3Utils.isEmpty(instreams)){
              System.out.println("出錯獲取二維碼失敗!");
          }
          return instreams;
      }

參數(shù)說明

1.url : https://api.weixin.qq.com/wxa/getwxacodeunlimit
2.access_token:上面有介紹(getAccessToken這個方法)
3.path:用戶掃描該碼進入小程序后,將直接進入 path 對應(yīng)的頁面;一般是首頁地址”pages/index/index”
也可以帶上參數(shù):”pages/index/index?query=1”。
4.width:二維碼的寬度 int類型 默認 430文章來源地址http://www.zghlxwxcb.cn/news/detail-626345.html

注意:

  1. 第二種生成小程序碼的情況 只有小程序上線后才能生成二維碼。
  2. 其他方法生成的碼只有小程序上線后才會有權(quán)限訪問 否則會提示小程序尚未發(fā)布

到了這里,關(guān)于Java 獲取小程序碼的兩種方式的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 【釘釘小程序】釘釘小程序預(yù)覽文件的兩種方式,從獲取權(quán)限到預(yù)覽文件全過程

    【釘釘小程序】釘釘小程序預(yù)覽文件的兩種方式,從獲取權(quán)限到預(yù)覽文件全過程

    最近寫釘釘小程序項目過程中,要實現(xiàn)頁面展示pdf、word、ppt等文件的功能。在網(wǎng)上搜了很多文章,研究了很久,總結(jié)了一下有兩種實現(xiàn)該功能的方法,方法一:借助web-view組件打開外部網(wǎng)頁;方法二:通過上傳到釘盤,從釘盤打開文件。具體過程如下。 釘釘開放文檔-web-vie

    2024年02月15日
    瀏覽(146)
  • 線程方法接收參數(shù)示例,Java的兩種線程實現(xiàn)方式區(qū)別

    總所周知,Java實現(xiàn)多線程有兩種方式,分別是繼承Thread類和實現(xiàn)Runable接口,那么它們的區(qū)別是什么? 繼承 Thread 類: 通過繼承 Thread 類,你可以創(chuàng)建一個直接表示線程的類。你可以覆蓋 Thread 類中的 run 方法來定義線程的邏輯。當(dāng)調(diào)用 start 方法啟動線程時,會執(zhí)行該類中的

    2024年02月11日
    瀏覽(54)
  • 線程方法接收參數(shù)和返回參數(shù),Java的兩種線程實現(xiàn)方式對比

    總所周知,Java實現(xiàn)多線程有兩種方式,分別是繼承Thread類和實現(xiàn)Runable接口,那么它們的區(qū)別是什么? 繼承 Thread 類: 通過繼承 Thread 類,你可以創(chuàng)建一個直接表示線程的類。你可以覆蓋 Thread 類中的 run 方法來定義線程的邏輯。當(dāng)調(diào)用 start 方法啟動線程時,會執(zhí)行該類中的

    2024年02月11日
    瀏覽(29)
  • 微信小程序入門及開發(fā)準(zhǔn)備,申請測試號以及小程序開發(fā)的兩種方式,目錄結(jié)構(gòu)說明

    微信小程序入門及開發(fā)準(zhǔn)備,申請測試號以及小程序開發(fā)的兩種方式,目錄結(jié)構(gòu)說明

    目錄 1. 介紹 1.1 優(yōu)點 1.2 開發(fā)方式 2. 開發(fā)準(zhǔn)備 2.1 申請 2.2 申請測試號 2.2 小程序開發(fā)的兩種方式 2.3 開發(fā)工具 3. 開發(fā)一個demo 3.1 創(chuàng)建項目 3.2 配置 3.3 常用框架 3.3 目錄結(jié)構(gòu)說明 3.4 新建組件 是一種不需要下載安裝即可使用的應(yīng)用,是一種 觸手可及 的應(yīng)用 可以借助微信的流量

    2024年02月05日
    瀏覽(48)
  • ES的兩種認證登錄方式: JAVA REST Client/HTTP Client

    通過RestHighLevelClient發(fā)送的es請求驗證方式: 通過http直接發(fā)送的es請求認證方式:

    2024年02月16日
    瀏覽(22)
  • 【Redis,Java】Redis的兩種序列化方式—nosql數(shù)據(jù)庫

    【Redis,Java】Redis的兩種序列化方式—nosql數(shù)據(jù)庫

    redis和mysql的區(qū)別: redis是屬于nosql的數(shù)據(jù)庫,而mysql是屬于sql數(shù)據(jù)庫,redis是屬于nosql數(shù)據(jù)庫。mysql是存儲在磁盤中的,redis是存儲在內(nèi)存中的,所以redis的讀取書讀快。這里所說的redis代表nosql,而mysql代表sql。 redis的數(shù)據(jù)庫是以鍵值對為基礎(chǔ)存儲在內(nèi)存中的,而mysql為代表的關(guān)

    2024年02月21日
    瀏覽(25)
  • 快速獲取cookie的兩種方式

    快速獲取cookie的兩種方式

    在需要獲取Cookie的谷歌瀏覽器界面,按Ctrl+Shift+j打開js控制臺。 輸入 console.log(document.cookie) 回車打印Cookies 新建書簽,書簽名稱隨意,書簽的網(wǎng)址是以下網(wǎng)址: 在需要獲取Cookie的頁面,點擊這個小書簽,就直接復(fù)制好了Cookie了。 以上兩種方式是自用實測比較方便高效的,在此

    2024年02月11日
    瀏覽(30)
  • 微信小程序: java實現(xiàn)獲取手機號方式

    目錄 1. 現(xiàn)在比較簡單的方式 - 接口名 --- 功能描述 - 調(diào)用方式 --- HTTPS 調(diào)用 --- 第三方調(diào)用 --- 請求參數(shù) --- 返回參數(shù) 2. 實現(xiàn)方式 1. 加入fastjson依賴? 2. http請求類 3. Json串工具類 4.接口方法 3.另外介紹一點access_token 微信官方文檔介紹:? getPhoneNumber --- 功能描述 該接口需配合手機

    2024年02月16日
    瀏覽(24)
  • Shell腳本參數(shù)獲取的兩種方式

    方式一 示例 新建一個test.sh文件 執(zhí)行腳本 : sh test.sh 5 6 3 6 2 輸出的結(jié)果: 使用該方式有兩點需要注意的地方:“$0” 表示的是腳本名稱本身 優(yōu)點 : 獲取參數(shù)方便、簡潔 缺點 :必須按照指定的順序輸入?yún)?shù),中間不能漏參數(shù)。否則參數(shù)將會產(chǎn)生錯亂。 方式二 使用 getopts 方式

    2024年02月12日
    瀏覽(41)
  • java 將word轉(zhuǎn)為pdf文件的兩種方式【spire.doc.free】【documents4j】

    java 將word轉(zhuǎn)為pdf文件的兩種方式【spire.doc.free】【documents4j】

    如資產(chǎn)證明等場景下,一般要求同時生成word與pdf兩種格式的證明文件,且兩者格式需保持一致,可以各自單獨生成,但那樣可能需要維護兩個模板文件,所以也可以僅定義一份word的模板文件,使用模板生成word文件,再將word轉(zhuǎn)換為pdf,這樣不僅少維護一個模板,也可以保證

    2024年02月12日
    瀏覽(26)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包