1. 程式人生 > 程式設計 >微信小程式呼叫後臺service教程詳解

微信小程式呼叫後臺service教程詳解

寫在前頭,本篇文章簡單記錄一下,在前後端分離的微信小程式應用中,前端訪問後臺service的實現思路,沒有過多涉及技術實現方面。

先上一張官網的圖片,它很清楚的講明瞭要在後臺service為每一個小程式使用者提供登入資訊需要做哪些事情。使用者拿到了後臺給的登入憑據,訪問後臺service。

微信小程式呼叫後臺service教程詳解

靜默授權與非靜默授權

先來講講這兩個概念,靜默授權,顧名思義,這授權動作對於使用者來說是感知不到的,小程式端悄咪咪得就做了。因此,沒有知會使用者的授權方式拿到的資訊也是不太重要的。但是,靜默授權是開始重要的一步,因為它為接下來的動作提供了code。呼叫靜默授權可用小程式提供的API:wx.login()。再來講講非靜默授權,顧名思義,它的授權是要有明顯動靜的,而且它是要得到使用者認可才可以執行。API:wx.getUserInfo(),這個介面要不要用可根據小程式的實際需求來。

後臺獲取openId

小程式提供了一個介面code2session,拿著我們靜默授權獲取到的臨時登入憑證code再呼叫一下這個介面就能獲取到openId了。openId是在當前小程式中對使用者唯一性的標識。注意,這一步是在後臺伺服器做的,我們參考一下官網的文件(後端API)就會更清楚了。它說:

後端API不能直接在小程式內通過wx.request呼叫,即api.weixin.qq.com不能被配置為伺服器域名。

但是我們會有疑問,我們在自己開發的時候,在小程式端呼叫是success的,和官網說的並不一樣。如果你碰到和我一樣的疑問可以看看這個(重點在4.4.2伺服器介面)。

基於OAuth2.0生成token

在後臺,可以用SpringSecurity的OAuth2.0這一個工具,用openId來生成前端請求後端資料的附帶校驗資訊token。具體是如何實現的筆者也沒有深入瞭解……獲取到了這個token後,前端可將其存入webStorage中,每一次呼叫後臺service的時候,就可以利用請求的攔截器在config引數中加入token。後端就可以確定傳送請求的使用者身份,保證了系統的安全性。

微信小程式呼叫後臺service教程詳解

總結:以上大致描繪了小程式後臺自定義登入態的開發思路。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。