Back

blockchain - 使用infura

发布时间: 2020-12-20 10:04:00

infura是一个永远在线的JSON-RPC的ETH服务器。 有了它,我们就不用自己维护一个ETH节点了。

参考:  https://infura.io/docs/ethereum/json-rpc/eth-sendRawTransaction

先注册,用免费版就行, 然后创建一个project 

会得到一个 private key,  project id 

测试: 

不要相信官网的例子 ,跑不通,会出现404 错误。 

直接访问一个实际的接口:

 
  curl --user :c3924df4305f45xxxxxxxxxxx    \
       -d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'   \
       https://mainnet.infura.io/v3/6d5b3edb39ed4ac39731a6f107540942
    
就会得到结果:{"jsonrpc":"2.0","id":1,"result":"0xaf50dc"}

注意: 上面的 --user 后面,是一个冒号紧跟 private key

调用某个接口:(注意没有加 --user 认证)

curl https://mainnet.infura.io/v3/MY-PROJECT-ID     
    -X POST
    -H "Content-Type: application/json"
    -d '{
         "jsonrpc":"2.0",
         "method":"eth_sendRawTransaction",
         "params":["0xf86d820d1b851c2c297a00825208943ae7a18407b17037b2ecc4901c1b77db98367cda87049e57d63540008026a07931b78f0f596f49655d2c0418156f742ffab64cb2c545616d1f3843e4f4f778a026d63f88d6166ec32223c1e850fb9245e4b5df6d50237080684fc933e7ac0e4b"],
         "id":1
       }'

用法跟调用自家的rpc server是一样的。 

查询余额  (查询goerli网络)

 curl --user :c3924df4305f45dcb24da2d94665e???    \
       -d '{"jsonrpc":"2.0","method":"eth_getBalance","params":["0xc0dd5021e298db57bef361c735cd1c04cef2e48a", "latest"],"id":1}'   \
       https://goerli.infura.io/v3/6d5b3edb39ed4ac39731a6f107540???

Back