這篇文章將為大家詳細(xì)講解有關(guān)微信小程序如何調(diào)用后臺(tái)service,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。
成都創(chuàng)新互聯(lián)公司始終堅(jiān)持【策劃先行,效果至上】的經(jīng)營理念,通過多達(dá)10年累計(jì)超上千家客戶的網(wǎng)站建設(shè)總結(jié)了一套系統(tǒng)有效的全網(wǎng)整合營銷推廣解決方案,現(xiàn)已廣泛運(yùn)用于各行各業(yè)的客戶,其中包括:衛(wèi)生間隔斷等企業(yè),備受客戶稱贊。寫在前頭,本篇文章簡單記錄一下,在前后端分離的微信小程序應(yīng)用中,前端訪問后臺(tái)service的實(shí)現(xiàn)思路,沒有過多涉及技術(shù)實(shí)現(xiàn)方面。
先上一張官網(wǎng)的圖片,它很清楚的講明了要在后臺(tái)service為每一個(gè)小程序用戶提供登錄信息需要做哪些事情。用戶拿到了后臺(tái)給的登錄憑據(jù),訪問后臺(tái)service。
先來講講這兩個(gè)概念,靜默授權(quán),顧名思義,這授權(quán)動(dòng)作對(duì)于用戶來說是感知不到的,小程序端悄咪咪得就做了。因此,沒有知會(huì)用戶的授權(quán)方式拿到的信息也是不太重要的。但是,靜默授權(quán)是開始重要的一步,因?yàn)樗鼮榻酉聛淼膭?dòng)作提供了code。調(diào)用靜默授權(quán)可用小程序提供的API:wx.login()。再來講講非靜默授權(quán),顧名思義,它的授權(quán)是要有明顯動(dòng)靜的,而且它是要得到用戶認(rèn)可才可以執(zhí)行。API:wx.getUserInfo(),這個(gè)接口要不要用可根據(jù)小程序的實(shí)際需求來。
小程序提供了一個(gè)接口code2session,拿著我們靜默授權(quán)獲取到的臨時(shí)登錄憑證code再調(diào)用一下這個(gè)接口就能獲取到openId了。openId是在當(dāng)前小程序中對(duì)用戶性的標(biāo)識(shí)。注意,這一步是在后臺(tái)服務(wù)器做的,我們參考一下官網(wǎng)的文檔(后端API)就會(huì)更清楚了。它說:
后端API不能直接在小程序內(nèi)通過wx.request調(diào)用,即api.weixin.qq.com不能被配置為服務(wù)器域名。
但是我們會(huì)有疑問,我們?cè)谧约洪_發(fā)的時(shí)候,在小程序端調(diào)用是success的,和官網(wǎng)說的并不一樣。如果你碰到和我一樣的疑問可以看看這個(gè)(重點(diǎn)在4.4.2服務(wù)器接口)。
基于OAuth3.0生成token
在后臺(tái),可以用SpringSecurity的OAuth3.0這一個(gè)工具,用openId來生成前端請(qǐng)求后端數(shù)據(jù)的附帶校驗(yàn)信息token。具體是如何實(shí)現(xiàn)的筆者也沒有深入了解……獲取到了這個(gè)token后,前端可將其存入webStorage中,每一次調(diào)用后臺(tái)service的時(shí)候,就可以利用請(qǐng)求的攔截器在config參數(shù)中加入token。后端就可以確定發(fā)送請(qǐng)求的用戶身份,保證了系統(tǒng)的安全性。
關(guān)于微信小程序如何調(diào)用后臺(tái)service就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。