【登陸與令牌】用戶獲取Token的流程

後臺在發放Token時,須要建立接口。數據庫

0.配置
1.路由
2.控制器
3.驗證器[沒帶code,再見!]
4.service
    1.構造函數拼接地址
    2.獲取session_key及openID
    3.生成Token
    4.準備緩存數據
    5.寫入緩存
5.異常處理
6.完善控制器

首先,根據小程序客戶端傳給接口的code,和appid、secret一塊兒拼接url到小程序服務器請求session_key和openID,這裏要作一些異常處理,包括code被使用過或者失效、接收微信服務器返回的錯誤碼等等。
具體作了如下分類供參考:小程序

結果1. result爲空 直接返回--微信內部異常
結果2. result包含errcode 登陸異常,返回錯誤信息和錯誤碼
結果3 .成功 生成token

而後,在正確接收到openID以後,就能夠生成token了,緩存

1.根據得到的openid判斷數據庫中是否存在openid對應的user
2.若不存在,新增一條user記錄newUser($openid),以openid爲標識。爲了減輕數據庫壓力,在系統的相關查詢中仍使用uid:$uid。
3.若存在:$uid = $user->id;
4.將用戶id和權限以及生成的token等寫入緩存;

最後,將生成的token返回給客戶端就OK啦。服務器

相關文章
相關標籤/搜索