最近幫人家作一個微信小程序,恰好想熟悉一下。因爲牽扯到多用戶使用系統,以及數據共享,因此天然架構選擇了,客戶端和服務器的方式。html
後臺服務器是windows server,後臺程序是.Net WebApi,跑在IIS下面,由於不想系統過重,數據量不大,因此選擇了xml 做爲數據庫web
客戶端,服務器架構的微信小程序坑以下數據庫
第一坑:(五項條件請具有)小程序
一、一個已備案的域名(二級域名能夠的),不是localhost、也不是127.0.0.1,域名不能加端口 (因此不要夢想能夠搭在局域網裏使用了,那是不可能的)c#
二、加ssl證書,也就是https://~~~windows
四、HTTPS 服務器的 TLS 版本支持1.2及如下版本,通常就是1.0、1.一、1.2要同時支持這三個版本,一個也不能少,要否則就會出現下面這種狀況 微信小程序
五、微信小程序後臺加上合法域名設置(一個月內改的次數是有限的,且行且珍惜)api
文章請參考: https://blog.csdn.net/abc123434/article/details/76570111服務器
第二坑:(申請免費CA證書)微信
網上有文章說能夠在下面網站申請免費證書,然而我申請了,感受格式不對(後綴名)
申請證書
後來還好我有一臺騰訊雲服務器,在騰訊雲服務器管理登陸以後,能夠申請免費的證書。最終生成證書是一個壓縮包,各類服務器都有(很好很強大,格式也對)
IIS下的
我參考的的下面這篇文章
證書安裝指引(騰訊雲)
http://www.mamicode.com/info-detail-1991699.html
還有另一篇
配置IIS 證書 請參考:
https://www.cnblogs.com/dudu/p/iis_https_ca.html?utm_source=tuicool&utm_medium=referral
第三坑:(配置訪問權限)
記得要在微信公衆號裏配置小程序能夠訪問的,合法域名,以下圖
第四坑:(系統名稱不要有 敏感字眼)
什麼互動答題啥的 都是封殺對象。還有第一名字記得想好了,由於之後小程序更名都是要 收費的
第五坑:(小程序是不支持退出的!!!)
不要天真的覺得點擊小程序右上角的小叉叉能夠退出程序,不是的!!! 它還在後臺運行!!!
下次進去仍是上次關閉時的頁面。
並且小程序如今尚未直接退出的API !!! 巨坑!!!
第六坑:(有些功能在編譯器裏是調試不了的)
比方有上交的叉叉點擊,你想測試退出功能或事件。
實際上出來的是文章搜索界面。
第七坑:(發佈流程)
1.先要提交代碼審覈
2.審覈通常一到兩個小時(應該是人工手動測試的,注意若是系統須要密碼登陸的話,要提交審覈的時候附加 用戶名,密碼信息,我就由於這個緣由被審覈不過~~ 再提交一把,2小時時間過去了。。。。。。)
3.審覈完了,就能夠點擊發布來發布你的小程序了。(須要配置小程序的進入主頁面)
還有一些坑,想到了再添加吧。
其餘的總體用起來還行:)
下面是微信小程序開發會用到的一些功能參考文檔
微信小程序端
微信小程序:如何利用navigateBack退出小程序
https://www.imooc.com/article/43682
小程序退出後仍在後臺運行,
http://www.wxapp-union.com/thread-3279-1-1.html
微信小程序退出重啓
https://blog.csdn.net/u014570569/article/details/77478761?utm_medium=referral
【總結】微信小程序 - 用戶受權時被拒絕的解決辦法(受權失敗場景處理)
From <https://blog.csdn.net/sinat_22014829/article/details/77719663>
添加圖片
https://developers.weixin.qq.com/miniprogram/dev/component/image.html?t=1476197485892
微信小程序 延時執行 定時執行
setTimeout(function () {
//要延時執行的代碼
}, 1000) //延遲時間 這裏是1秒
微信小程序頁面跳轉三種方式
https://blog.csdn.net/zgmu/article/details/72123329
Picker (下拉選擇)
從底部彈起的滾動選擇器,現支持五種選擇器,經過mode來區分,分別是普通選擇器,多列選擇器,時間選擇器,日期選擇器,省市區選擇器,默認是普通選擇器。
https://developers.weixin.qq.com/miniprogram/dev/component/picker.html
UI 佈局
https://www.jb51.net/article/99130.htm
微信獲取登陸用戶信息
http://www.javashuo.com/article/p-daxzapkh-no.html
js取值
https://www.cnblogs.com/LoveQin/p/7153427.html
http://www.51xuediannao.com/xiaochengxu/xiaochengxu-chuanzhi.html
頁面間 傳值 取值
https://www.jianshu.com/p/b2d912920a6a
微信小程序六(數據請求 表單的建立 提交 與接收)
https://blog.csdn.net/wujiangwei567/article/details/52795656
Radio button (單選按鈕)
https://blog.csdn.net/u014360817/article/details/52668808
頁面跳轉
https://www.cnblogs.com/yaoyuqian/p/7967472.html
服務器端
路由設置(WebApi)
http://www.javashuo.com/article/p-swjpwrfq-dv.html
提升生產性工具(四) - XML數據庫的嘗試,
https://www.cnblogs.com/TextEditor/p/4195361.html
c# webapi POST 參數解決方法