近期用了一星期的時間,開發了一個小程序。小程序名稱是:小特Jarvis,取自鋼鐵俠的管家。小程序
後臺採用C#編寫,WebAPI接口。其實開發時間並很少,小程序自己提供的API,相比公衆號的API來講,已經封裝了好多東西,咱們只負責簡單調用便可。並且,提供的開發工具也很方便,開發環境和VisualStudio很相似,包括快捷鍵(不知道Java的開發員是否是也有這感受?)微信小程序
好了說重點。今天是個總結,把這一星期開發時遇到的坑整理下,但願其餘人遇到時能有個參考。其實開發的坑很少,部署的坑最多。開始咯服務器
1,多看文檔微信
多翻翻官方教程是頗有必要的。還有官方社區,裏面有一些不錯的開源小程序源碼,能夠直接下載參考工具
2,代碼佈局佈局
前臺項目的佈局建議使用默認便可,不要本身加些特殊的文件夾。如:Page文件夾裏就加頁面、Image文件夾裏就加圖片開發工具
3,如何聯調阿里雲
後臺地址就是咱們在小程序後臺配置的那個Https地址串。我最開始的作法是把後臺程序直接部署至這個地址上,發現提示TSL版本沒達到要求什麼的。能夠在這個頁面裏,這個選項勾選便可,後臺程序經過寫日誌方式調試程序,感受不是很方便。有人說能夠用遠程調試?能夠嘗試下,但小編沒用這個方法。操作系統
用的是直接把調用地址改爲本地,就是https://localhost開頭便可,至關和本機的程序直接調試,方便不少的。3d
基本開發的時候,遇到的就是這些問題,基本都很順利。
部署時遇到的問題有點多
1,API地址切換至小程序後臺設置的Https地址,發現提示TSL版本太低不支持。這個問題問別人,都說沒有出現過。看來是和環境有關,而實際上確實和服務器的環境有關。
我以前是Win2008,網上查資料說這個版本的操做系統只支持TSL低版本,不支持高版本。而小程序要求的是高版本。好像最低是2008R2版本
小編後來換成2012操做系統,此問題解決
2,報:fail hostname certificate
這個問題就是一個緣由:你申請的證書有問題。要麼你是免費的,要麼就是不符合小程序的要求。但這都不是事兒,正規渠道購買的證書都沒有問題
3,uploadFile:fail Error: Hostname/IP doesn't match certificate's altnames: 'Host: xxx1. is not in the cert's altnames: DNS:xxx2, DNS:xxx2'
這個問題不容易遇到,問了幾我的都說沒遇到過,碰巧又被我遇到了。
從字面含義的解釋看,是說我證書綁定的域名B,和我小程序調用的地址A不匹配。繼續分析,
我在申請證書時,我申請的域名是一級域名,而小程序用的是個人二級域名,這就是差異。
難道一級域名有個證書後,不能被二級域用?
答案是的
在申請證書時,有個通配符的名詞,意思就是若是支持通配符,就能夠一級域名只申請一個便可,二級域名能夠不申請。不支持通配符的話,二級域名就要再申請一個。
由於我申請的是阿里雲免費證書,因此不支持通配符,所以才報上面的那個錯誤
後來,我給小程序用到的二級域名再申請一個證書,綁定好就能夠了。最後一個坑也順利解決
這裏要說下,阿里雲的免費證書是能夠申請多個的,能夠被微信小程序使用
好了,我在開發和部署的時候,遇到了上面這些問題,留坑記念
這是個人小程序,歡迎關注