access_token到期是自動過期呢。還是要服務端用expires_in過期時間去判斷?
refresh_token 同問?
都是自動過期的
access_token這個自動過期了。 refresh_token是自動生成新的access_token返回給前端? 還是說要后端邏輯去處理。 就是這兩個參數(shù)沒懂清楚原理
如果
access_token
自動過期了,前端直接使用refresh_token
請求接口重新獲取access_token
。如果refresh_token
也過期了,則直接退出登錄,讓用戶重新登錄即可
access_token
有效期一般設置為7小時 refresh_token
有效期一般設置為一周 我的想法是在刷新token的時候除了返回access_token之外還返回refrsh_token,那樣的話就不會出現(xiàn)用戶用著用著,突然被強制性退出來了
大佬,這邊刷新token的時候返回參數(shù)不能加一個refrsh_token值嗎,還是說加了存在安全隱患,我公司前端這邊的人希望在刷新token的時候,除了返回access_token,還希望返回refrsh_token,這樣的話,用戶就不可能被強制退出來,作者你所說的把過期時間設置很長這顯然不合理
對,我后臺將access_token設置7天,refrsh_token設置1個月,那在refrsh_token快要過期的時候,用戶正在使用app,首先,access_token過期了,去找refrsh_token刷新access_token,又正好這時候refrsh_token也過期了,那這用戶的app用著用著,就直接被彈出來了說你要登錄,那這也不合理吧,我們在使用微信,支付寶等app的時候,出現(xiàn)過被強制退出來的情況嗎,也沒有吧
通過
refresh_token
刷新獲取access_token
,然后在返回的時候再次同時返回access_token
和refresh_token
,這個我下來看看。
@leizong
請把你的需求場景詳細描述一下
在用戶登錄的時候,返回access_token和refrsh_token,access_token的過期時間我設置1天,refrsh_token的過期時間我設置7天,只要用戶在使用app的時候,access_token一過期,就可以用refrsh_token刷新access_token,那我想說的是,如果用戶在使用app的時候,正好在refrsh_token快過期的時候使用app,第一,access_token過期,去找refrsh_token,而這時候refrsh_token也正好過期了,那這個用戶的app就直接被彈出來說你要登錄,一個用戶用app好好的,怎么可能被強制彈出來說要登錄呢,我希望這個被強制彈出來登錄的情況不存在,也就是之前我所說的,在用refrsh_token刷新access_token的時候,除了返回access_token的同時,還希望返回refrsh_token,那么無論這兩個token的過期時間設多久,都不會出現(xiàn)被強制退出來登錄的情況
請更新到
composer require tinywan/jwt ^v1.3.0
或者后續(xù)更高版本composer require tinywan/jwt
。支持刷新token的時候除了返回access_token之外還返回refresh_token