.NET开发者如何愉快的进行微信公众号开发
(此文章同時發(fā)表在本人微信公眾號“dotNET每日精華文章”,歡迎右邊二維碼來關(guān)注。)
題記:這篇文章只是一個如何提高開發(fā)效率的簡單指導(dǎo)和記錄,不會涉及具體的微信公眾號開發(fā)內(nèi)容。
就我理解,微信作為半個移動互聯(lián)網(wǎng)入口,且已經(jīng)在代替大量APP的趨勢下,進(jìn)行微信公眾號開發(fā)是一個開發(fā)者必須面對的命運(yùn)。那么.NET開發(fā)者如何高效的進(jìn)行微信公眾號開發(fā)呢?從我有限的經(jīng)驗(yàn)來看,如下兩個方面是特別需要解決的。
1,SDK的選擇和使用
由于微信公眾平臺的訪問接口龐大繁雜且基于HTTP API的,如果從底層開始寫每一行代碼就未免耗時費(fèi)力。幸好,基于.NET的SDK還是有很多,比如之前我的文章《使用ASP.NET MVC、Rabbit WeixinSDK和Azure快速開發(fā)部署微信后臺》中介紹的Rabbit WeixinSDK。最近在研究的Senparc.Weixin SDK更是一個強(qiáng)大和全面的開源SDK。已全面支持微信公眾號、微信支付、企業(yè)號、開放平臺、JSSDK、搖一搖周邊等模塊。這個SDK做了很多底層封裝,比如AccessToken的自動管理、用戶上下文的支持等等,讓開發(fā)者更加專注于業(yè)務(wù)邏輯的實(shí)現(xiàn)。更多信息可以參考官網(wǎng):http://weixin.senparc.com/。
要使用也很簡單,直接“Install-Package Senparc.Weixin.MP”,如果使用MVC開發(fā)的話,可以再安裝“Senparc.Weixin.MP.MVC”。不過暫不支持ASP.NET Core。
2,程序的調(diào)試(包括本地和遠(yuǎn)程)
眾所周知,微信公眾號的運(yùn)行機(jī)制決定了微信服務(wù)器必須訪問一個80端口的公網(wǎng)地址,這給程序調(diào)試帶來了一些障礙。不過使用相應(yīng)工具并通過如下步驟還是很容易進(jìn)行本地和遠(yuǎn)程調(diào)試的:
2.1,開通“公眾平臺測試帳號”
開通公眾號中的“開發(fā)者工具”的“公眾平臺測試帳號”。在這個工具里面實(shí)際上模擬了真實(shí)公眾號的后臺配置,具體配置的內(nèi)容需要后續(xù)步驟來提供。
2.2,設(shè)置本地調(diào)試
所謂本地調(diào)試就是指讓“公眾平臺測試帳號”可以訪問開發(fā)機(jī)器上跑的IISExpress,從而實(shí)現(xiàn)Visual Studio對代碼的Debug。實(shí)現(xiàn)本地調(diào)試的最簡單方法,當(dāng)然是配置路由器DMZ(或者端口映射)+動態(tài)域名。如果使用的是光寬帶,那么自己的路由器一般是在電信運(yùn)營商光貓(其集成了路由器)之后,端口映射就無效。這個時候只有借助于花生殼之類的工具來把本機(jī)端口映射為外網(wǎng)80端口。如果只是開發(fā)調(diào)試的話,個人免費(fèi)版足夠了。
如下圖,就是把本地一個MVC項(xiàng)目的運(yùn)行端口映射到花生殼免費(fèi)子域名下的80端口。
有了這個外網(wǎng)地址之后,就可以填寫到“公眾平臺測試帳號”中的“接口配置信息”的URL中。填寫的時候,如果遇到“提交失敗”,那么可以多試幾次,也可以把花生殼重啟一下看看。如下圖所示:
其中wechat是我的測試項(xiàng)目中用于和微信服務(wù)器交互的MVC Controller的名字。經(jīng)過這樣的配置,就可以愉快的在本地調(diào)試微信公眾號應(yīng)用了。
2.3,配置遠(yuǎn)程調(diào)試
所謂遠(yuǎn)程調(diào)試,就是當(dāng)你把公眾號應(yīng)用發(fā)布到公網(wǎng)服務(wù)器上的時候,通過配置Visual Studio的遠(yuǎn)程調(diào)試功能,從而實(shí)現(xiàn)對生產(chǎn)服務(wù)器的Debug。
要配置遠(yuǎn)程調(diào)試,我能想到的最便捷的方式就是把應(yīng)用發(fā)布到Azure的App Service中,然后啟用遠(yuǎn)程調(diào)試功能。如下圖所示:
要把VS附加到遠(yuǎn)程應(yīng)用上,最簡單的方式就是通過VS的Server Explorer中的Azure瀏覽器找到你的應(yīng)用的節(jié)點(diǎn),點(diǎn)擊右鍵來選擇“Attach Debugger”,如下圖所示:
當(dāng)然這個時候,記得要把“公眾平臺測試帳號”中的“接口配置信息”的URL改為Azure中的地址。如果公眾號應(yīng)用是發(fā)布到虛擬機(jī)中,那么也可以通過安裝遠(yuǎn)程調(diào)試插件來實(shí)現(xiàn)VS遠(yuǎn)程調(diào)試,相關(guān)資料可以Bing一下。
另外,如果在團(tuán)隊(duì)開發(fā)的情況下,建議每個人都獨(dú)立申請“公眾平臺測試帳號”、花生殼端口映射和Azure帳號,各自使用自己的環(huán)境來調(diào)試,互不影響。
轉(zhuǎn)載于:https://www.cnblogs.com/redmoon/p/5548498.html
總結(jié)
以上是生活随笔為你收集整理的.NET开发者如何愉快的进行微信公众号开发的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 道指是什么意思 站上34000点的意义
- 下一篇: 企业会计制度和企业会计准则区别