Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript MetaMask-RPC错误:权限请求已挂起,以10为单位_Javascript_Angular_Angular10_Metamask - Fatal编程技术网

Javascript MetaMask-RPC错误:权限请求已挂起,以10为单位

Javascript MetaMask-RPC错误:权限请求已挂起,以10为单位,javascript,angular,angular10,metamask,Javascript,Angular,Angular10,Metamask,我已经将MetaMask与Angular进行了集成,在从代码中打开MetaMask扩展时,我得到了这个错误 下面是我打开扩展的代码。 我在单击打开MetaMask时调用此函数,它在其中给出了该错误 元掩码-RPC错误:权限请求已挂起;请稍等。{代码:-32002,消息:“权限请求已挂起;请稍候。”} ethEnabled(template?): any { if ((window as any).web3) { (window as any).web3 = new

我已经将MetaMask与Angular进行了集成,在从代码中打开MetaMask扩展时,我得到了这个错误

下面是我打开扩展的代码。 我在单击打开MetaMask时调用此函数,它在其中给出了该错误

元掩码-RPC错误:权限请求已挂起;请稍等。{代码:-32002,消息:“权限请求已挂起;请稍候。”}

ethEnabled(template?): any
  {
    if ((window as any).web3)
    {
      (window as any).web3 = new Web3((window as any).web3.currentProvider);
      (window as any).ethereum.enable();
      console.log((window as any).ethereum.enable());

    }
    else
    {
      this.modalRef = this.modalService.show(template);
    }
  }


这个错误实际上是预期的;当您已提交权限请求,但用户未登录MetaMask或未授予您的应用权限时,就会发生这种情况

如果用户登录到MetaMask并接受权限请求,则此错误将不再发生

这在中进行了解释,其中指出,
在连接请求挂起时,应始终禁用“连接”按钮(否则会发生此错误)

这里有一种处理方法:

  • 在请求挂起时禁用该按钮
  • 如果用户在某个等待时间(可能是10-20秒?)后未连接,则在按钮下显示一条消息,请求用户完成元掩码连接

中有更多信息和一个很好的示例。

清除internet缓存、临时文件等。

作为答案的一部分,您应该提供一个示例,说明如何完成“清除internet缓存、临时文件等”。