# WalletConnect 已断开还会有权限吗？核对会话与签名请求

整理：链小知（AI 辅助）
资料核对日期：2026-10-12
引用地址：https://lianxiaozhi.com/tools/guides/walletconnect-review-session-disconnect
难度：入门
核验方式：官方文档整理，未执行真实账户操作

以已存在的连接为对象，检查账户、链、方法和断开状态，将协议会话与链上授权分开处理。

## 使用工具
- [WalletConnect（连接协议）](https://lianxiaozhi.com/tools/walletconnect) · [官方入口](https://walletconnect.com/)

## 前置条件
- 准备本人使用的钱包、已连接应用的准确域名、公开地址和目标链；从钱包自己的连接/会话管理入口开始。
- 本教程针对 WalletConnect Sign 的会话语义；不需要开发者项目 ID，也不创建新的二维码或签名来测试。
- 各钱包菜单不同；界面未展示底层 namespaces 时记录可见字段，不要求读者找 SDK 日志或提交会话 URI。

## 1. 确认谁在管理钱包资产

WalletConnect 负责应用与钱包通信，不能代替你当前的实际钱包。记录钱包名称、应用域名与账户，避免在“WalletConnect 登录”宣传页面重新输入恢复词。

官方网络主页还有支付等产品，本教程只处理应用连接会话。二维码或可连接标识不证明应用可信；配对和账户批准也不是一笔交易执行结果。

核对结果：钱包产品、应用和账户三个对象清楚。
依据：[WalletConnect：当前网络产品](https://walletconnect.com/)
依据：[WalletConnect：会话、请求与断开](https://raw.githubusercontent.com/WalletConnect/walletconnect-docs/main/docs/walletkit/web/usage.mdx)

## 2. 读取已批准会话范围

在钱包会话详情查看实际列出的账户、链和权限。规范区分应用提出的 required/optional 范围与最终批准 session；有多条链时分别核对，不从钱包总支持名单推定本会话全部可用。

若详情展示 methods，记录 personal_sign、eth_sendTransaction 或对应链方法的区别；只有简化权限说明时记录原文。发现意外账户、网络或权限时，不追加批准来消除错误。

核对结果：记录实际已批准范围，缺字段明确未知。
依据：[WalletConnect Sign：Namespaces 规范](https://raw.githubusercontent.com/WalletConnect/walletconnect-specs/main/docs/specs/clients/sign/namespaces.md)

## 3. 将连接与后续请求分开

协议的 session_request 是建立会话之后的独立请求。查看现有请求历史中的账户、链、消息内容或交易目标；签消息也可能带来权限，不因无 Gas 就直接认可。

出现链不匹配、请求过期或不支持的方法时保留错误，不按“已连接”推断请求成功。浏览器提示成功、钱包签名和真实链上执行是不同结果。

核对结果：各请求有自己的对象及结果，连接未替代逐次审核。
依据：[WalletConnect：会话、请求与断开](https://raw.githubusercontent.com/WalletConnect/walletconnect-docs/main/docs/walletkit/web/usage.mdx)
依据：[WalletConnect Sign：Namespaces 规范](https://raw.githubusercontent.com/WalletConnect/walletconnect-specs/main/docs/specs/clients/sign/namespaces.md)

## 4. 从钱包端断开并复查

在实际钱包的活动会话列表选准确应用后使用其 Disconnect 入口，再检查条目状态；也可对照应用端是否更新。官方协议通过 session_delete 通知对端，但具体按钮和同步展示由钱包实现。

关闭标签页或清除应用界面不等于双方会话已结束。出现 session topic 不存在之类错误，可能已断开或选错会话；保存双方状态与时间，不重新连接危险页面来验证。

核对结果：钱包会话状态及应用端可见状态分开保存，失败不记成功。
依据：[WalletConnect：会话、请求与断开](https://raw.githubusercontent.com/WalletConnect/walletconnect-docs/main/docs/walletkit/web/usage.mdx)

## 5. 另查既有链上授权

若曾批准代币 spend 或 Permit，另外按原网络、代币、spender 查权限。断开协议会话不发出链上撤销，也不回滚此前签名或交易。

需要撤销时使用对应钱包/权限工具的专门流程，核对其请求和网络成本；此处仅确认还有哪些权限待核。链上结果未读取到时保持未知，不能写“所有权限已清除”。

核对结果：会话已断开与资产授权是否仍在是两项独立结论。
依据：[CoinEx Wallet：退出应用仍有链上授权](https://support.wallet.coinex.com/hc/en-us/articles/27329204728985-How-to-unauthorize-an-address-to-DApps)

## 常见错误
- 连接协议不是独立持钥钱包，二维码不构成应用认证。
- 规范例子里的链不代表当前会话已批准这些链。
- 关闭网页、协议断开和链上授权清零不是同一操作。

## 完成检查
- 保存实际钱包、应用、账户、会话范围和双方断开状态。
- 原有资产授权及消息签名另核对，未知范围未被说成已清除。
- 本文核验为协议及官方帮助正文；未连接钱包、签名或运行 SDK 会话测试。

## 相关知识
- [钱包签消息与签交易有什么区别？不付 Gas 的签名也要读内容](https://lianxiaozhi.com/learn/wallet-message-vs-transaction)
- [代币授权是什么？断开钱包与撤销授权有什么区别](https://lianxiaozhi.com/learn/token-approvals)
- [Permit 签名授权是什么？不发 approve 交易不等于没有授权](https://lianxiaozhi.com/learn/permit-signatures)

## 官方依据
- [WalletConnect：当前网络产品](https://walletconnect.com/)
- [WalletConnect Sign：Namespaces 规范](https://raw.githubusercontent.com/WalletConnect/walletconnect-specs/main/docs/specs/clients/sign/namespaces.md)
- [WalletConnect：会话、请求与断开](https://raw.githubusercontent.com/WalletConnect/walletconnect-docs/main/docs/walletkit/web/usage.mdx)
- [CoinEx Wallet：退出应用仍有链上授权](https://support.wallet.coinex.com/hc/en-us/articles/27329204728985-How-to-unauthorize-an-address-to-DApps)
