• mascara-1


    来源:https://github.com/MetaMask/mascara

    (beta) Add MetaMask to your dapp even if the user doesn't have the extension installed

    有两种调用mascara的方法:

    1)页面端

    <script src="https://wallet.metamask.io/metamascara.js"></script>

    在网页上调用,将得到:

    因此在网页上可以通过window.metamask.createDefaultProvider()的方法来进行使用

    2)后台调用(现在我使用的是这种方法)看简单使用metamascara

    npm i --save metamascara
    const metamask = require('metamascara')
    const EthJs = require('ethjs')
    
    // mascara will use the environmental provider if the user brings one
    // in the form of metamask extension, mist or parity
    // other wise it will make one for you :}
    
    const ethereumProvider = metamask.createDefaultProvider()
    
    const eth = new EthJs(ethereumProvider)

    或者:

    const metamask = require('metamascara');
    const
    Web3 = require('web3'); const ethereumProvider = metamask.createDefaultProvider(); const web3 = new Web3(ethereumProvider);

    Developing:

    For development with metamask-extension/mascara to point the iframe at localhost just do:

    const metamask = require('metamascara')
    const ethereumProvider = metamask.createDefaultProvider({
        host: 'http://localhost:9001'
      }) // or what ever port you use

    如果上面没有设置host,那就说明要使用的是网页版的metamask(https://wallet.metamask.io)。如果想要设置自己的网页版,那么就要将相应的服务端写好,并将接口设成9001,然后就可以通过设置host来进行连接了(这部分之后再讲,在这里将直接使用网页版的metamask)

    How does it work and how to use it:

    Mascara is an iframe that acts as a proxy between your dapp and metamask core. The metamask core is the global context housed in a service worker, it does the key management for every dapp the user visits.

    然后后面分析一下代码

  • 相关阅读:
    馒头国家标准公布:应是圆形或椭圆形(图)
    完全用C#写的SharpOS 0.0.1版发布
    c#操作c/c++的Dll文件
    研究发现GSM信号影响睡眠
    解决QQ与360的终极解决方案
    分享一个参数检查的类
    问题是问题,可是出路呢?
    读《码斗士修炼之路》有感
    我看博客园之争论
    关于ORM的一点思考
  • 原文地址:https://www.cnblogs.com/wanghui-garcia/p/9877830.html
Copyright © 2020-2023  润新知