Metamask 的 ethereum.window 对象是什么?

问题描述 投票:0回答:2

所以我正在开发一个chrome扩展区块链钱包,就像metamask一样。该扩展程序与网页通信以签署交易等。 Metamask 通过在浏览器的全局 API 中注入 window.ethereum 对象来实现此目的。我正在尝试做同样的事情。我已经成功地注入了 window.ethereum 对象。

问题是我的window.ethereum对象与Metamask的window.ethereum对象不一样。这就是为什么使用 web3.js 和 ethers.js 库构建的 dapp 无法连接到它。

如何像 Metamask 一样构建 window.ethereum 对象? Metamask 或 ethers js 有提供相关文档吗? 有没有其他方法或更好的方法来做到这一点?

我在做什么:-> 使用 React js 构建弹出脚本。用 vanilla js 编写内容脚本。使用内容脚本将inject.js脚本注入网页的DOM中。在inject.js中声明window.ethereum对象。

我想要什么:->

提前致谢。

javascript google-chrome-extension ethereum metamask brave
2个回答
4
投票

MetaMask 在其 docs 中声明该扩展实现了 EIP-1193:以太坊提供商 JavaScript API。

它是您的浏览器扩展需要实现的一组标准化规则(属性、方法、行为),以便能够与 EIP-1193 包装器(例如 ethers.js)进行通信。


0
投票

您是否找到了相关的框架项目?

© www.soinside.com 2019 - 2024. All rights reserved.