主页 > imtoken安卓最新版 > Metamask如何正常访问以太坊账户

Metamask如何正常访问以太坊账户

imtoken安卓最新版 2023-10-11 05:10:15

介绍

今天就和大家聊一聊Metamask正常访问以太坊账户的方式。 很多人可能不太了解。 为了让大家更好的了解,小编为大家总结了以下内容。 希望您能从本文中有所收获。

当您使用Metamask测试以太坊DApp时,如果出现莫名其妙的问题,请查看web3.eth。 能否获取到账号以太坊上的账户类型有哪些,如果获取不到,那么最可能的原因是你使用的是新版本的Metamask,默认开启了隐私模式。

有两种方法可以让你的 DApp 正常访问 Metamask 管理的账户:关闭隐私模式,或者修改代码以兼容隐私模式。

1.关闭隐私模式

在Metamask中,首先进入设置,然后点击Security,Strong Privacy以太坊上的账户类型有哪些,在Privacy Mode菜单中,选择Close Privacy Mode:

 Metamask如何正常访问以太坊账户

2.兼容隐私模式

2018 年 11 月,当 Metamask 首次推出隐私模式时,该选项默认关闭。 但在最新版本中,隐私模式已经默认开启。 要求每个用户手动关闭隐私模式是不现实的,所以更好的解决方案是修改我们的 JavaScript 代码以兼容隐私模式:

 window.addEventListener(& # 39;负载# 39;,,async (),=祝辞,{
  ,,,//,Modern  dapp 浏览器…
  ,,,if  (window.ethereum), {
  ,,,,,,,window.web3 =, new  Web3 (ethereum);
  ,,,,,,,try  {
  ,,,,,,,,,,,//,Request  account  access  if 需要
  ,,,,,,,,,,,await  ethereum.enable ();
  ,,,,,,,,,,,//Acccounts 你暴露
  ,,,,,,,,,,,web3.eth.sendTransaction ({/*,…, */});
  ,,,,,,,},catch (错误),{
  ,,,,,,,,,,,//,User  denied  account 访问…
  ,,,,,,,}
  ,,,}
  ,,,//,Legacy  dapp 浏览器…
  ,,,else  if  (window.web3), {
  ,,,,,,,window.web3 =, new  Web3 (web3.currentProvider);
  ,,,,,,,//Acccounts  always 暴露
  ,,,,,,,web3.eth.sendTransaction ({/*,…, */});
  ,,,}
  ,,,//,Non-dapp 浏览器…
  ,,,else  {
  ,,,,,,,console.log (& # 39; Non-Ethereum  browser 只发现你should  consider  trying  MetaMask ! & # 39;);
  ,,,}
  });

使用 window.ethereum>