鍍金池/ 問答/PHP/ app如何保持一次登陸后持續(xù)保持session狀態(tài)

app如何保持一次登陸后持續(xù)保持session狀態(tài)

app 登陸一次后 以后打開app不用登陸就能操作接口 session狀態(tài)一直保持

我想象的是這樣實現(xiàn),不知道對不對 影響大不大,第一次登陸成功后返回token給客戶端,客戶端存放到Local Storage中,等下次打開app時,在app啟動圖靜默訪問驗證token的接口,如果token驗證成功,就解析token里面的user_id重新保持至session。

但是這樣的話安全方面,有沒有什么影響呢。

回答
編輯回答
礙你眼

1.對token的進行設置,比如md5+加鹽,然后可以弄時間戳做隨機性,并保存到一定時間到session,但一般來說要高安全性的,每次請求都是唯一的token隨機性傳給客戶端,這樣就增高安全性;
2.可以進行sign簽名。

2017年9月13日 20:12
編輯回答
忘了我

jwt.io 了解下,每次對token處理就可以了

2017年11月28日 20:49
編輯回答
巴扎嘿

基本合理,一點小修正,最好讓服務器端驗證token,客戶端不要做任何驗證和解析動作,如果需要用戶信息,都從服務器端返回就好,客戶端僅把token當作無意義亂碼保存比較好,這樣安全一些。

2018年7月25日 11:37
編輯回答
怪痞

首先需要明確的一點是,你不需要去關心 session

可能你以前做的都是 web 方面的開發(fā),對于 web 我們記錄登錄憑證一般都是采用 session
所以當你做接口開發(fā)時,第一時間想到的也是 session

在 App 中,所有請求都是無狀態(tài)的,所以大家一般會采用 token 的方式來校驗登錄

在客戶端請求登錄接口時,返回一個生成好的 token

在請求需要登錄接口的時候,客戶端直接把這個 token 傳給后端

后端主要干的兩件事情

  1. 校驗 token 是否正確 (也就是你的解出 user_id )
  2. 校驗 token 是否過期

如果上面校驗正確,就認為用戶已經(jīng)登錄成功~

對于這方面的介紹,你可以簡單了解一下 jwt

2017年10月20日 20:36