簡體   English   中英

如何使用 Parse Server 錯誤從另一個瀏覽器選項卡檢測另一個 session

[英]How to detect another session is ongoing from another browser tab using Parse Server error

如果用戶從另一個選項卡或瀏覽器登錄,我正在嘗試自動注銷應用程序。 我正在使用 react-idle-timer 和 Parse Server。

我不確定這行代碼是否有用

Parse.Error.INVALID_SESSION_TOKEN

我可以通過 localStorage 訪問 session 令牌

  const res = await Parse.Cloud.run('login', values);
  console.log(res.session);

您無法區分來自同一瀏覽器中不同選項卡的請求。 它將共享相同的 session 令牌,並且與任何其他請求無法區分。 來自不同瀏覽器的請求將具有不同的 session 令牌,如果它們存儲一些用戶信息,您可以確定哪些屬於哪個用戶。

如果我們重新構建您的問題,聽起來您只想允許每個用戶進行一次活動登錄。 這需要一個支持防止多個並發會話的集中式或集群式 session 管理解決方案。

如果您只有一台后端服務器,或者您使用共享數據庫來存儲會話,那么您可以根據您用於 session 管理的內容來更輕松地執行此操作,因為所有會話都將在一台服務器上可用。

我不清楚您的用戶是否直接連接到解析服務器。 如果是這樣,您很可能需要直接修改 parse-servers 代碼來支持這一點。

一般來說,這是一個愚蠢的想法。 除非您有法律要求,否則我不會提倡對此感到擔憂。 繞過這個通常就像復制 session 令牌一樣簡單。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM