花了幾天把小程序的支付模塊接口寫(xiě)了一下,可能有著公眾號(hào)開(kāi)發(fā)的一點(diǎn)經(jīng)驗(yàn),沒(méi)有入太多的坑,在此我想記錄一下整個(gè)流程。
津市網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)建站,津市網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為津市千余家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站建設(shè)要多少錢,請(qǐng)找那個(gè)售后服務(wù)好的津市做網(wǎng)站的公司定做!首先先把小程序微信支付的圖搬過(guò)來(lái):
相信會(huì)來(lái)查百度的同學(xué)們基本都是對(duì)文檔的說(shuō)明不是很理解。我下面大概總結(jié)一下整個(gè)業(yè)務(wù)邏輯的過(guò)程。
微信小程序的商戶系統(tǒng)一般是以接口的形式開(kāi)發(fā)的,小程序通過(guò)調(diào)用與后端約定好的接口進(jìn)行參數(shù)的傳遞以及數(shù)據(jù)的接收。在小程序支付這塊,還需要跟微信服務(wù)器進(jìn)行交互。過(guò)程大致是這樣的:
一.小程序調(diào)用登錄接口獲取code,傳遞給商戶服務(wù)器用來(lái)獲取用戶的openID
我們知道在微信平臺(tái)中,同一個(gè)公眾號(hào)的openID都是不同的,它是用戶身份識(shí)別的id,也就是說(shuō),我們通過(guò)openID來(lái)區(qū)分不同的用戶,這個(gè)有微信開(kāi)發(fā)基礎(chǔ)的應(yīng)該都很熟悉。為了知道誰(shuí)在支付,我們需要先獲取當(dāng)前用戶的openid,那么openID應(yīng)該怎么獲取呢?看下圖:
看不懂嗎?不急,聽(tīng)我慢慢解釋,這個(gè)業(yè)務(wù)流程大致就是首先你得先在小程序的代碼中調(diào)用wx.login()來(lái)向微信獲取到code,拿到了之后把code通過(guò)request傳給商戶服務(wù)器,再由商戶服務(wù)器通過(guò)騷操作來(lái)跟微信服務(wù)器要session_key和openID。
偽代碼如下(小程序端):
getToken: function () { //調(diào)用登錄接口 wx.login({ success: function (res) { var code = res.code; wx.request({ url: 商戶服務(wù)器接口地址, data: { code: code }, method: 'POST', success: function (res) { wx.setStorageSync('token', res.data.token); //存在小程序緩存中 }, fail: function (res) { console.log(res.data); } }) } }) }