使用Java接入小程式訂閱訊息!

Java3y發表於2023-04-19

更新完微信服務號的模板訊息之後,我又趕緊把微信小程式的訂閱訊息給實現了!之前我一直以為微信小程式也是要企業才能申請,沒想到小程式個人就能申請。

訊息推送平臺?推送下發【郵件】【簡訊】【微信服務號】【微信小程式】【企業微信】【釘釘】等訊息型別

本想著跟微信服務號的模板訊息一樣,我去申請一個「測試號」,就能下發微信小程式的訂閱訊息了。但微信小程式的訂閱訊息一直不支援「測試號」下發。

於是,我就註冊了一個微信小程式,拿到我的小程式appIdsecret,並在微信後臺建立了幾個訂閱訊息的模板。

緊接著,這個把小程式的賬號就接入到訊息推送平臺的賬號管理體系下:

寫幾行程式碼得到剛才建立的模板,順便跟前端來個簡單的互動:

改幾行程式碼,把具體呼叫微信的邏輯給補上,有SDK的加持下這種程式碼就是10min就完成了,非常簡單。

image-20221208202228360

實現小程式的訂閱訊息推送,我花的時間最長就花在這下面啦:

1、擁有自己的小程式(擁有除錯基礎)

2、讓自己的登入到這個小程式裡(得到openId)

3、小程式彈窗讓我能授權給微信傳送訂閱訊息(得到推送許可權)

小程式的賬號我已經建立好了,但是小程式是沒有任何內容的。於是我就在小程式的後臺點點點,順便看看小程式一般是怎麼開發的。於是,我就看到了微信小程式的開發者工具:

https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html

下載了之後,這個小工具給我推薦「雲開發」,只要花點錢我就可以呼叫雲函式了。雖然要19.9塊,有點肉疼。但省時間的事,我咬咬牙就上了。

完了以後,我在小程式工具箱裡翻了好幾個模板,看看有沒有我想要的功能:登入小程式獲取openId、彈窗讓我授權模板傳送訊息。你別說,真給我翻到一個:

我是沒做過小程式的,自然就不會小程式開發,於是就只能摸石頭過河了。花了一天多,發現我在這個demo專案裡獲取的openId就是死活的調不通小程式(報錯就說不合法openId)。

經過漫長的除錯,我忍不了了,再這樣耗下去是不行的了。我直接去GitHub看看有沒有現成的demo,隨便一搜,還真的有。

https://github.com/zhangkaizhao/wxapp-subscribe-message-demo

直接將「wxapp」檔案下匯入到小程式的開發工具裡,一看,還真能用,程式碼又少。回看同步openId的程式碼,原來是要調介面請求微信做鑑權的呀。

於是我在訊息推送平臺裡也臨時寫了介面進行鑑權,在小程式呼叫登入的時候改下入參就完事咯。

經過登入憑證校驗之後,我們就能拿到openId,把訂閱訊息的許可權介面給喚起,點選允許,就能在訊息推送平臺下傳送一條小程式的訂閱訊息啦。

程式碼方面我就不細說啦,感興趣的同學可以把專案搞下來玩玩,原始碼都是有的。這幾天還在瘋狂更新中,看看目前的訊息渠道接入的情況吧?

如果想學Java專案的,強烈推薦我的開源專案訊息推送平臺Austin(8K stars) ,可以用作畢業設計,可以用作校招,可以看看生產環境是怎麼推送訊息的。開源專案訊息推送平臺austin倉庫地址:

訊息推送平臺?推送下發【郵件】【簡訊】【微信服務號】【微信小程式】【企業微信】【釘釘】等訊息型別

相關文章