本文為原創,原始地址為:http://www.cnblogs.com/fengzheng/p/5023678.html
俗話說,工欲善其事,必先利其器。要做微信公眾號開發,兩樣東西不可少,那就是要有一個用來測試的公眾號,還有一個用來調式代碼的開發環境。
測試公眾號
微信公眾號有訂閱號、服務號、企業號,在注冊的時候看到這樣的信息,只有訂閱號可以個人申請,服務號和企業號要有企業資質才可以。這里所說的微信公眾號開發指的是訂閱號和服務號。
另外,未認證的個人訂閱號有一些接口是沒有權限的,並且目前個人訂閱號已不支持微信認證,也就是說個人訂閱號無法調用一些高級的權限接口,下圖就是一個未認證的個人訂閱號所具備權限列表,像生成二維碼、網頁授權、自定義菜單、微信支付這樣的接口權限都是不具備的。
說了半天,那如果沒有企業資質,又想做高級接口的開發怎么辦呢。
微信公眾平台提供了測試公眾賬號,登錄地址為:http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login,只需要到這個頁面,點擊登錄,並用自己的微信客戶端掃碼,並授權登錄,就可以獲得屬於自己的測試公眾號。測試公眾號具備幾乎所有的接口,平時開發如果沒有可用的公眾號,就用這個測試的公眾號就可以了。
本地測試環境
開發微信公眾賬號的一大痛苦之處就是調試問題,每次實現一個功能后都需要部署到一個公網服務器,雖然目前有各種免費雲平台可以部署,但是調式基本只能靠日志輸出了,而且沒次修改->部署->查看日志,這樣的操作過程非常浪費時間,時間就是生命,這樣難道不是在浪費生命嗎。那么,有沒有辦法可以本地部署,本地調試呢?
當然有,因為每次向公眾號發送一條指令,公眾號所在的服務器要和你的服務器進行網絡交互,所以說你的服務器要保證外網可以訪問到,那么只需要將你本地映射到一個外網地址即可實現微信公眾號的本地調試。提供這樣功能的軟件不少,比如花生殼,但是要收費的。這里介紹一個免費的軟件,ngrok,訪問可能需要翻牆。根據本地所需的版本,windows或者linux版,然后注冊賬號,賬號注冊成功后,會得到一個免費授權碼,這個授權碼在第一次啟動ngrok時會用到。
以我本地為例,我下載的是windows版本的,下載並解壓后,找到解壓目錄,雙擊ngrok.exe,第一次啟動時,輸入如下命令:
ngrok -authtoken 授權碼 80
之后再啟動,雙擊ngrok.exe即可,啟動后輸入命令將本機映射到外網,將本地8080端口下的web服務映射到外網80端口,命令如下:
ngrok http 8080
啟動后的界面如下:
紅色部分即為映射的外網地址,現在訪問這個地址就是訪問本地的8080端口。但是免費版的ngrok,生成的外網映射地址是隨機的,每次重新啟動都會不一樣,但其實並無大礙,因為每天ngrok啟動一次中途基本不會關閉,每次啟動之后,到微信測試公眾號管理頁面,重新配置一下即可。
截止到目前為止ngrok是可用的,也就是說ngrok服務器雖然被牆了,但是微信公眾號服務器是可以訪問的,這樣一來也就不妨礙我們做本地調式了。只是下載注冊ngrok需要翻牆一下。
國內也有一些ngrok服務器,但是沒有試過,如果有興趣可以自行搜索一下。當然如果有能力,可以自己搭建一個ngrok平台,ngrok是go語言實現的,代碼已開源到github。
歡迎關注公眾號「gushidefengzheng」古時的風箏
還可以加入 Java 微信討論群(如果二維碼過期:請加微信:fengdezitai001 ,備注:cnblogs):