【问题标题】:How do decentralised apps handle logging out via walletconnect去中心化应用程序如何通过 walletconnect 处理注销
【发布时间】:2022-10-04 20:55:13
【问题描述】:

使用元掩码登录https://opensea.io 后,我看到他们具有注销功能。

research 之后,我意识到“注销”只是 UI 中的一个变化,因为我仍然连接到 metamask,并且只有在我使用 metamask chrome 扩展手动断开连接时才能断开连接。

但是,在我使用 dcentwallet 之类的钱包应用程序通过手机使用 wallectconnect 登录到 opensea 后,我看到我的应用程序显示我已登录,并且我可以选择使用该应用程序手动断开连接。但是,如果我使用 opensea 注销,我会断开与我的钱包应用程序的连接。

所以我假设 opensea 正在使用某种事件来强制我的应用程序与其站点断开连接。我认为这不是 web3 事件,因为当我退出 opensea 时没有要求我签名,它会强行断开我与钱包应用程序的连接。有谁知道 opensea 使用什么技术来断开通过 walletconnect 连接的移动钱包应用程序?

【问题讨论】:

    标签: javascript ethereum web3js metamask wallet-connect


    【解决方案1】:

    WalletConnect 通过所谓的会话连接客户端和服务器。 WC 协议为客户端(在您的情况下为 OpenSea)提供特定的 disconnect 命令。客户端将此命令发送到 WC,WC 终止会话并向服务器(钱包应用程序)发送会话已终止的通知。

    反之亦然,钱包应用程序可能会从其一侧断开连接,这再次基本上是 WC 终止会话并通知 dApp/客户端

    【讨论】:

      猜你喜欢
      • 2011-09-19
      • 2020-12-02
      • 1970-01-01
      • 1970-01-01
      • 2014-11-08
      • 2017-06-01
      • 2010-09-22
      • 2011-03-03
      • 1970-01-01
      相关资源
      最近更新 更多