多端引數不統一問題

Iwanna發表於2021-06-08

以前的鑑權引數放的位置以及名字各種不統一
比如鑑權核心引數有兩個AA、BB
在不同平臺放在header、cookie、query、body的都有
甚至有的AA叫Aa、A_A、A-a、A_a :full_moon_with_face: 就很離譜
組合起來就有554=100種不同的寫法(甚至更多),每個的優先順序還不是統一的,所以不能寫一個公用解的方法來適應所有端

一直想要想個方法去解決這個問題

目前架構是參考的bilibili的大倉結構(就是把全部專案扔一個倉庫)

然後分為閘道器層和服務層

服務層提供各種底層服務(sever),閘道器層聚合介面給前端(bff)

多端引數不統一問題

  1. 鑑權是在bff裡面處理的
  2. 同一個bff的介面可能供很多個前端專案用
  3. 針對同一個前端專案,解的優先順序是一定的,同一個前端專案可能會涉及到許多和後端bff層

針對以上三點
我給出的解決方案是讓前端在header頭裡面種一個前端的唯一標誌
比如frontType:app_user、web_panel、mini_suser
每次解使用者資訊時就先判定是哪個前端專案
根據不同的前端專案去解析使用者資訊
說白了就是不能寫一個公用解的方法來適應所有端那就給每個端寫一個解
可能有同學會疑惑為什麼不是規範原有引數呢?
要是能規範的話,我還需要在這寫著一堆廢話嗎
一個公司慢慢發展下來都會累積很多專案,會有很多歷史包袱的
有些東西不是你想改就能改的(比如老app怎麼修改?),目前公司還沒確定怎麼解決

本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章