微信企業號開發源碼Java編寫,懶人開發一鍵式部署項目,WeChatEnterprise框架你值得擁有

幾年前無意間接觸了微信公衆平臺開發,這個在當時還是一個新鮮的事物,但現在已經很流行了,發展的類型也特別的多,比如訂閱號、服務號、小程序、微信企業號等,這些產品在人們日常的生活與開發中,都是非常常見的。

當時的博主也順應時代的變化,去嘗試着開發公衆平臺,到目前爲止也算得上是得心應手了吧,但平時我不會去開發這種東西,因爲我的本職是做Android開發的,所以我會選擇在下班或休息時間去專研一下,當然付出是肯定的,目的不是收穫,而是積累更多的新知識。最近博主總結了前面做過的微信公衆號開發、微信企業號開發的一些思緒,爲大家謀了一些福利吧,就是之前寫的一些資源需要CSDN下載積分,或者視頻教學需要錢,但這次博主抽出時間,把企業號開發相關的接口全部整合優化了一遍,也就是WeChatEnterprise框架了。

回首前面幾年我的成果,博主並不覺得自己是什麼大神,是跟你們一樣的菜鳥,打工仔一枚,只是平時喜歡專研一些技術相關的東西罷了。

最初的源碼資源成果,從最初的三次下載量,達到了2450多次,好評率80%以上,但是博主後面發現這個資源莫名其妙的從下載5積分漲到了30積分,還有就是文件有時候下載下來是個rar不帶任何後綴,這個是CSDN的問題,絕對不是博主的問題,畢竟30積分對不常玩CSDN的人來說,還是有點高的。

 

 

跟CSDN合作的企業號開發視頻教學也收穫了22740多學員,這也是讓我感到很欣慰的,但是出於博主個人的原因,這個視頻博主個人覺得是不合格的,尤其是視頻裏面博主的聲音,非常小而且還帶着靦腆,我感覺很多不起付費的學員,但現在我已經準備做一些東西來彌補這個過錯,那就是這個懶人式的部署開發框架WeChatEnterprise

 

 

後面博主不推薦大家再去購買這個課程,主要是音質真的不好,加上博主初次做視頻,效果真的非常不好,所以不推薦大家再去學習視頻,直接使用懶人框架開發學習完全夠用了,良心推薦這個懶人式的部署開發框架WeChatEnterprise

就連博主新出版的書也是用這個懶人式的部署開發框架WeChatEnterprise開發的,裏面幾乎覆蓋了95%以上的開發接口,以及它們的調用、使用。

新書發佈地址:https://blog.csdn.net/jspping/article/details/82766456

隨便舉個慄(例)子,如OAuth2授權、二次驗證等

首先看OAuth2授權,這個也全部都封裝好了,可以直接使用。

授權結果:

再來看二次驗證:

 

二次驗證的結果:

當然這些只是其中的一部分,其他的接口都是已經封裝好的,只需要替換對應的參數即可直接拿來使用。

接下來回到正題,介紹懶人式的部署開發框架WeChatEnterprise的正確使用:

①首先要確保你的服務器已經搭建好,然後替換微信官方提供解決java.security.InvalidKeyException:illegal Key Size異常的jar包。

jar下載地址:http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html,下載後解壓,可以看到local_policy.jar和US_export_policy.jar以及readme.txt。
如果安裝了JRE,將兩個jar文件放到%JRE_HOME% \lib\security目錄下覆蓋原來的文件。如果安裝了JDK,將兩個jar文件放到%JDK_HOME%\jre\lib\security目錄下覆蓋原來文件。

②從博主的GitHub上clone或下載框架代碼,導入到開發工具,找到wx.api.WXApi類,將其中的Token、EncodingAesKey、CorpId、Secret參數全部填上自己實際開發的參數然後保存,注意Token、EncodingAesKey參數可到企業號後臺隨機生成也可自定義,但必須要兩端參數完全一致。

GitHub WeChatEnterprise 框架下載或clone地址:https://github.com/Mr-Jiang/WeChatEnterprise

開發工具下載地址:http://www.engineer-jsp.cn/download/tools/tools.rar

③在開發工具中編譯之前導入修改參數後的WeChatEnterprise 框架源碼,並部署到你的服務器。隨後進入到微信企業後臺,單擊“應用與小程序”選項,進入頁面後,單擊左側“應用”選項,找到“自建”選項,單擊你要開啓API接收的自建應用,單擊要開啓API接收的自建應用後,進入到自建應用的詳細頁面,找到“接收消息”選項,單擊“設置API接收”選項,進入到API接收消息頁面,將隨機生成或自定義的Token、EncodingAesKey一併填寫在開啓API接收消息的web頁面內對應的方框。注意,此時填寫的Token、EncodingAesKey必須要與WeChatEnterprise 框架源代碼下wx.api.WXApi類的Token、EncodingAesKey完全保持一致,否則會一直驗證失敗。接下來在給大家介紹URL參數填寫,這裏默認填寫http://你的服務器地址或域名地址/WeChatEnterprise/coreServlet,如果需要修改地址的組成,可以修改服務器的項目root目錄,也就是你服務器默認訪問的那個項目的首頁面,servlet名稱可修改WeChatEnterprise 框架源碼下的WebRoot/WEB-INF/web.xml裏servlet-mapping節點的子節點url-pattern,反正最終這個路徑一定是外網下可以被訪問到的,否則也是會一直提示驗證失敗。

④完成以上步驟之後,你離成功部署項目只差一步之遙了,在單擊“保存”按鈕之前,默認不勾選上報地理位置、上報進入應用事件,博主也不建議勾選,因爲勾選後每次進入應用都要提示,很煩人,確認是否勾選之後單擊“保存”按鈕即可完成開啓API接收,進行後續的消息收發、自定義菜單等接口的操作,部署項目至此就成功了。

接下來繼續給大家介紹WeChatEnterprise 框架的使用以及核心類的解讀。

wx.servlet.WXCoreServlet核心類,WeChatEnterprise框架的消息出入口

再部署成功之後,所有的消息請求與收發都在wx.servlet.WXCoreServlet類,這個類將收到的消息進行校驗,校驗成功之後在解密,解密成功後將協議進行層級分發。該類也是消息的出口,對發送和響應出去的消息進行加密發送。

wx.protocol.WXProtocolManager核心類,WeChatEnterprise框架的消息解析、管理、分發等

在成功收到消息之後,wx.protocol.WXProtocolManager類首先對消息進行解析,數據無誤之後將會對協議進行分發,依據消息類型將協議劃分爲WXTextProtocolWXImageProtocolWXVoiceProtocolWXVideoProtocolWXLocationProtocolWXLinkProtocolWXEventProtocol七大協議場景,即文本協議、圖片協議、語音協議、視頻協議、位置協議、鏈接協議、事件協議,其中事件協議WXEventProtocol下又進行了多層級的事件分發。七大協議場景繼承自WeChatEnterprise框架的wx.protocol.WXBaseProtocol基礎協議,也最終將響應的消息交由wx.protocol.WXBaseProtocol基礎協議通過wx.protocol.WXProtocolManager類響應給wx.servlet.WXCoreServlet核心類,wx.servlet.WXCoreServlet核心類再將響應的消息進行加密併發送出去。

wx.protocol.WXProtocolManager類協議分發的7大場景下,當某個場景所執行的流程全部完成後,由wx.protocol.WXBaseProtocol基礎協議類releasProtocol方法將該場景釋放,標誌下一場景的開始。

上述都是WeChatEnterprise框架最最核心的部分,其他部分都是獨立開來的,是開發者主動調用併發送消息給關注者。

接下來具體介紹WeChatEnterprise框架各個包的具體功能:

package wx.api

                       ------ 定義了框架的全局常量、全局變量 :請求地址、Token、EncodingAesKey、CorpId、Secret、獲取憑證、封裝code請求地址等

package wx.app

                       ------ 應用管理 :獲取應用、設置應用、獲取應用列表

package wx.contact

                       ------ 通訊錄管理 :成員管理、部門管理、標籤管理

                               1.成員管理 :創建成員、讀取(獲取)成員、更新成員、刪除成員、批量刪除成員、獲取部門成員、獲取部門成員詳情、userid to openid、openid to userid、二次驗證、邀請成員、獲取外部聯繫人詳情

                                2.部門管理 :創建部門、更新部門、刪除部門、獲取部門列表

                               3.標籤管理 :創建標籤、更新標籤名字、刪除標籤、獲取標籤成員、增加標籤成員、刪除標籤成員、獲取標籤列表

package wx.encryption

                       ------ 消息的加解密校驗、請求校驗

package wx.media 

                       ------ 素材管理 : 上傳臨時素材、獲取臨時素材、上傳圖片

package wx.menu

                       ------ 自定義菜單 ------ 創建菜單、獲取菜單、刪除菜單

package wx.msg

                       ------ 基礎消息單元類 :文件、照片、MpNews、News、Text、TextCard、Video、Voice

package wx.msg.chat.group

                       ------ 羣聊 :創建羣聊、修改羣聊、獲取羣聊會話

package wx.msg.push

                     ------- 消息推送:推送文本消息、推送圖片消息、推送語音消息、推送視頻消息、推送文件消息、推送文本卡片消息、推送news圖文消息、推送mpnews消息

package wx.msg.req 

                      ------ 發送(請求)消息:發送文本消息、發送圖片消息、發送語音消息、發送視頻消息、發送文件消息、發送文本卡片消息、發送news圖文消息、發送mpnews消息

package wx.msg.resp

                      ------ 被動響應(response) :響應文本消息、響應音樂消息、響應圖片消息、響應音頻消息、響應視頻消息、響應圖文消息

package wx.oauth2 

                       ------ 授權:code換取成員信息、user_ticket換取用戶信息

package wx.protocol

                       ------ 協議核心 :協議解析、協議管理、協議分發、協議劃分爲7大場景、協議層級下發等

package wx.servlet

                       ------ 請求響應入口 : 消息的請求與響應、二次驗證、授權登陸、重定向等

package wx.util

                       ------ 工具包 : IO異步與同步阻塞網絡請求、核心消息工具類、線程池管理等

如果你覺得博主寫的代碼框架不錯並且對你的開發有幫助,請在GitHub的WeChatEnterprise倉庫頁面的右上角點擊“Star”,對我的技術分享進行支持,將是我最大的動力,博主會繼續分享更多優質的資源給大家。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章