java - 如何強制app端強制下線?
問題描述
例如 web 端 刪除了 正在app 端登陸的用戶,怎樣能讓app 端用戶強制下線,web 端用什么方式可以達到這個效果?javaweb
問題解答
回答1:舉個例子: app需要token登錄,推送消息,app接收推送消息后代碼執行清空token行為導致token失效,強制退出
回答2:這個是需要App和后臺一起處理的,首先在app端寫好token失效App的處理行為,是跳轉到登錄界面,是殺死app還是刪除一些本地文件。接著是如何讓app獲取token失效的信息,一種是樓上說的后臺推送消息,另一種是在后臺改變token信息,app再次訪問后臺發現token失效。對后臺而言,前者是主動,后者是被動。假如要求App被立刻通知到,顯然是前者,假如對通知的時間不敏感,可使用后者。一般來說,用戶操作app對網絡的訪問還是很密集,使用后者簡單方便,時間延遲也沒那么大。
回答3:要服務端控制,在app調用接口時明確返回用戶下線了,然后app退出到登錄界面?
回答4:可以使用socket.io 有了長連接,雙向通信,服務端給客戶端發消息,客戶端收到消息,退出到登錄界面
回答5:首先要搞清楚你任務的app下線的含義。1.是直接強制app回到登錄界面,這次的登錄失效。2.app頁面保留,但是繼續有任何操作或者說是與網絡相關的操作時,使之下線。第一種情況比較復雜,因為你是立即執行,那么最合適的就是使用推送,web端推送給特定用戶,而app端本身就已經寫好特定推送的相應行為就可以了。第二種情況的話,只需要你在web端去讓你的token驗證失效就可以了,正常情況每一個用戶的token,都會在web端保留一個失效時間,你只需要讓這個失效時間立即失效,那么你的app端有相應的請求處理,當token失效后,會調到登錄頁面重新登錄
回答6:一般沒有必要實時下線。在用戶操作app,app向服務器發出請求時,服務器返回相應信息,然后app再反應退出即可。
相關文章:
1. python - django 里自定義的 login 方法,如何使用 login_required()2. android-studio - Android 動態壁紙LayoutParams問題3. sql語句如何按or排序取出記錄4. angular.js - 不適用其他構建工具,怎么搭建angular1項目5. 主從備份 - 跪求mysql 高可用主從方案6. python如何不改動文件的情況下修改文件的 修改日期7. mysql優化 - mysql count(id)查詢速度如何優化?8. css3 - [CSS] 動畫效果 3D翻轉bug9. mysql主從 - 請教下mysql 主動-被動模式的雙主配置 和 主從配置在應用上有什么區別?10. node.js - node_moduls太多了
