Java實戰:基于Cloud Studio 通過Java實現和公眾號的快速集成案例
今天通過Java實現和微信公眾號的對接,來給大家介紹一下騰訊Cloud Studio 云端開發工具,感受其強大的云端編程模式帶來的效率提升。
一、Cloud Studio是什么
圖片
1.1 Cloud Studio介紹
Cloud Studio(云端 IDE)是一款基于瀏覽器的集成式開發環境,為程序員提供了一個安全穩定快速的云端工作站。用戶在使用 Cloud Studio 時可以做到無需安裝任何軟件,只需要打開瀏覽器然后登錄自己的賬戶就可以隨時隨地的進行代碼編寫。它還擁有高效的代碼協作,代碼編寫保存后,多人協作幾乎是實時更新。并且團隊協作功能還集成了非常好用的即時通訊功能,比如留言板、語音/視頻聊天。這樣讓協作溝通變得更加高效、及時。
Cloud Studio的前身正是CODING自主研發的Coding WebIDE,所以在Cloud Studio的登錄界面仍然保留了舊版WebIDE的訪問入口提示,方便老用戶繼續訪問。
1.2 Cloud Studio功能特點
在線開發環境:Cloud Studio 可以直接在瀏覽器中運行,無需安裝任何本地開發工具。這使得開發者可以隨時隨地訪問和開發他們的項目。當然官方也提供的客戶端工具,對于喜愛客戶端開發的朋友來說還是非常友好的。
支持幾十種編程語言:Cloud Studio 支持幾十種編程語言,包括 JavaScript、Python、Java、Go、C++ 、vue、nodejs等模板。開發者可以在一個 IDE 中快速開發不同編程語言的項目。
功能強大的代碼編輯器:Cloud Studio 的編輯器提供了語法高亮、代碼補全、自動縮進、代碼折疊、多光標編輯等常見的開發功能,極大的提高開發效率。
版本控制集成:Cloud Studio 集成了常見的版本控制系統,如 Git,方便開發者管理和提交代碼。
云計算資源:Cloud Studio 集成了騰訊云的計算資源,包括虛擬機、容器服務、函數計算等,開發者可以直接在 IDE 中創建和管理這些資源。
代碼協作功能:開發者可以邀請其他人協作開發同一個項目,實時共享代碼編輯和調試,大大提高團隊的協作效率。
安全保障:Cloud Studio 提供了安全的開發環境,保護開發者的代碼和數據安全。同時,騰訊云還提供了豐富的安全控制和權限管理功能。
1.3 Cloud Studio的好處
降低開發人員安裝開發工具的成本
云端開發,對于遠程辦公非常友好,不受辦公地點的限制,隨時可以進行開發
統一開發環境,不管是java、C#、vue、python等等,一套環境就可以開發相應編程語言的項目。
團隊協作能力很強,支持多人協作,代碼更新后,其余團隊開發者可以幾乎實時看到代碼效果
降低企業程序員電腦的成本,節省硬件資源
安全性高,Cloud Studio 提供了安全的開發環境,保護開發者的代碼和數據安全,提供了豐富的安全控制和權限管理功能。
二、實戰案例
下面就通過一個Java案例來給大家介紹一下如何使用Cloud Studio。
2.1 創建開發環境
首先進入官網,登錄自己的賬戶,具體如下圖:
圖片
這里選擇微信掃碼登錄,登錄之后的界面如下圖:
圖片
2.2選擇開發模板
這里可以看到官方內置了幾十種主流的模板,因為我準備基于Java語言開發,這里點擊Java。
圖片
點擊后進入項目創建階段,下圖是創建的過程。
圖片
創建過程還是比較快的,不到一分鐘就可以創建完成。創建完成后如下圖:
圖片
2.3 代碼編寫
開發環境創建完成后然后我們開始代碼的編寫。
2.3.1 引入依賴包
首先引入依賴,我們打開pom.xml,增加hutool工具類庫的依賴。
添加內容如下:
<!-- 引入hutool工具類庫 -->
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>5.8.16</version>
</dependency>
然后開發環境會自動解析下載依賴包。等依賴包安裝完成后就可以正常使用不需要管他。
Hutool簡單介紹
Hutool 是一個Java工具庫,提供了許多常用的功能和工具類,用于簡化Java開發過程中的常見任務。它的目標是提供簡潔、高效、易用的API,幫助開發者更加快速、便捷地編寫Java代碼。這里主要使用的是json、網絡請求類庫。
圖片
2.3.2 創建Models配置類
創建Models目錄存儲配置信息,然后新建ConstantUtil.java 存儲配置信息。
說明:這里為了快速演示效果,暫時不使用配置文件了來管理公眾號平臺的配置信息。
圖片
主要是公眾號的賬戶信息和調用API的URL,具體配置內容如下:
package net.models;
/**
* 配置類
*/
public class ConstantUtil {
// 公眾號開發者APPID
public final static String app_id = "你的appId";
// 公眾號開發者密碼
public final static String app_secret = "你的appSecret";
// Token獲取
public final static String token_url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential";
// 獲取素材url
public final static String news_url="https://api.weixin.qq.com/cgi-bin/material/batchget_material";
}
2.3.3 創建測試類demo.java
首先創建test文件夾,然后在test文件夾創建Demo.java 測試類
說明:獲取微信Token方法,這個只需要調用官方的get方法獲取token信息,這個是公眾號開發調用其他接口的第一步。
/**
* 獲取微信Token 使用 HttpUtil 請求類庫獲取token
*
* @return
*/
private static String GetWechatToken() {
String tokenUrl = ConstantUtil.token_url + "&appid=" + ConstantUtil.app_id + "&secret="
+ ConstantUtil.app_secret;
String tokenResult = HttpUtil.get(tokenUrl);
System.out.println("返回的微信token信息");
System.out.println(tokenResult);
JSONObject tokenJson = JSONUtil.parseObj(tokenResult);
String token = tokenJson.get("access_token").toString();
return token;
}
注意:我們第一次訪問的時候一般獲取token是失敗的,因為微信公眾平臺接口調用安全的機制,需要登錄自己的微信公眾號平臺設置ip白名單。
配置方式:點擊查看,然后修改ip信息,最后使用管理員的微信掃碼確認即可。
圖片
第一次調用報錯的信息如下
"{"errcode":40164,"errmsg":"invalid ip 101.34.119.114 ipv6 ::ffff:101.34.119.114, not in whitelist rid: 64cb0c69-57641460-58a91c42"}"
配置好ip白名單后可以正常獲取微信的Token。如下圖:
圖片
代碼內容如下:
/**
* 獲取公眾號圖片素材列表
*/
private static String GetArticleNew(String token) {
// 定義body參數
HashMap<String, Object> paramMap = new HashMap<>();
String newsUrl = ConstantUtil.news_url + "?access_token=" + token;
paramMap.put("type", "image");
paramMap.put("offset", 100);
paramMap.put("count", 2);
String newResult = HttpUtil.post(newsUrl, JSONUtil.toJsonStr(paramMap));
System.out.println("-----------------獲取圖文素材信息如下:-------------------------");
System.out.println(newResult);
return newResult;
}
圖片
參數說明:
type:素材的類型,圖片(image)、視頻(video)、語音 (voice)、圖文(news)(必填參數)
offset:從全部素材的該偏移位置開始返回,0表示從第一個素材 返回 (必填參數)
coun:返回素材的數量,取值在1到20之間 (必填參數)
返回格式如下:
{
"item":[
{
"media_id":"uk2hzL6i8MPTiBzig4LD64Kqv7UWho7VqENYuh2LLHSpqvP4_8L5Pf9MNTPhaaUi",
"name":"9.jpg",
"update_time":1645232103,
"url":"https:\/\/mmbiz.qpic.cn\/sz_mmbiz_jpg\/HsDqsyKaPibH6vOqe6vcGIibZXwZiaZIxaicZiavib5xnzkDgTJ9YVUGX1NdgEPVnZ182Iic5p0txN05kqx6Np6bfVsyA\/0?wx_fmt=jpeg",
"tags":[
]
},
{
"media_id":"uk2hzL6i8MPTiBzig4LD66-YZlPjqi21gcgLlMzz0_55oKezz_5vLsmsI_OOev83",
"name":"8.jpg",
"update_time":1645232102,
"url":"https:\/\/mmbiz.qpic.cn\/sz_mmbiz_jpg\/HsDqsyKaPibH6vOqe6vcGIibZXwZiaZIxaicgcbRYZgSI7smmtAR3d0kEicty5hmHCBkE6p6eHteIGFibNxdoEhxyrTQ\/0?wx_fmt=jpeg",
"tags":[
]
}
],
"total_count":4559,
"item_count":2
}
三、使用總結
個人感覺Cloud Studio這款在線云開發環境還是非常棒的,通過這個Java對接公眾號的實際體驗案例,整體功能使用非常流暢、隨時隨地進行項目開發、豐富的項目模板等等,有了Cloud Studio這款工具大家不受辦公地點的影響、隨時隨地就可以開發自己的項目,還有很多優點大家可以親自去自己體驗一下。