wx.login
api-login.jpg
- 通過wx.login獲取到一個request code
- 請求第三方服務器登錄url淹冰,請求的url需要帶request code
- 第三方服務器根據獲取的request code 缩焦,和小程序的AppID掸掸、SECRET組合慰照,訪問https://api.weixin.qq.com下某個url獲取到session_key和openid十性,session_key是對數據進行價目簽名的密鑰逛揩,openid是對當前用戶的唯一標識季稳。
- (可選)第三方服務器需要自己產生一個session_id(或者其他token等)沪猴,并用這個session_id作為key辐啄,session_key和openid作為value采章,保存到第三方服務器session或者是redis中,最好設置一個比較短的過期時間壶辜,因為大部分情況下只是使用微信數據悯舟,不需要長期使用。
- (可選)將第三方返回session_id或者token保存到本地砸民,需要的時候帶上這個參數抵怎,第三方服務器就可以根據這個參數,獲取到session_key和openid
wx.checkSession
每次使用request code之前通常會檢驗request code是否過期岭参,如果過期反惕,需要重新調用wx.login登錄獲取新的request code。
獲取用戶信息
通過wx.getUserInfo可以獲取到用戶的信息演侯,到時候有部分敏感數據并看不到姿染,這個時候就需要,我們把獲取到的加密數據作為請求發(fā)送給第三方服務器秒际,第三方服務器使用session_key解密后悬赏,就可以獲取到部分敏感數據了,用戶根據自己的需求進行處理程癌。
微信支付
微信支付的步驟
- 統(tǒng)一下單
- 通過appid舷嗡、nonceStr、package嵌莉、signType和timeStamp這5個字段進行數據簽名
- 使用wx.requestPayment方法發(fā)起支付請求
基本流程是微信小程序使用wx.request方法調用进萄,第三方服務器的url,這個url在服務端通過https://api.mch.weixin.qq.com/pay/unifiedorder下單锐峭,這個url需要傳遞大量的信息中鼠,例如小程序的id、商家好沿癞,金額等(https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?chapter=9_1)援雇,如果下單成功,會返回package椎扬,然后再將package返回給小程序惫搏,最后調用wx.requestPayment發(fā)起支付請求,如果發(fā)起支付請求成功蚕涤,會直接開啟微信的支付功能筐赔,要求輸入支付密碼,如果密碼正確揖铜,會支付成功茴丰。
布局
- 水平排列 display:flex ,flex-direction:row 水平折行需要添加flex-wrap:wrap,
- 垂直排列 display:flex,flex-direction:column 垂直折行需要添加flex-wrap:wrap
- 水平排列對齊方式使用justify-content:(屬性很多,自己根據情況配置,例如flex-start)
- 垂直排列對齊方式使用align-items屬性(屬性很多贿肩,自己根據情況配置峦椰,例如flex-end)
- 水平等間隔排列設置justify-content:space-between
- 帶邊距的水平等間隔排列justify-content:space-around
其他
- 微信統(tǒng)一WeUI
- 圖表 wx-charts (https://github.com/xiaolin3303/wx-charts)下載js導入工程就可以使用了
更多基礎參考微信小程序官網