Hi 游客

更多精彩,请登录!

比特池塘 区块链技术 正文
节点控制* |% G3 Z, N$ I  e( K9 e
在某种程度上用户必须能够控制节点。这一点通过搭建一个HTTP服务器可以实现。
( t' N/ V2 f$ C7 ?% c3 y
  1. var initHttpServer = () => {9 A( o; B" i" o4 m8 R8 e
  2.     var app = express();% r1 X- k4 `. M
  3.     app.use(bodyParser.json());
    5 b7 f- r4 e4 A4 L, C5 V. ]
  4.     app.get('/blocks', (req, res) => res.send(JSON.stringify(blockchain)));  y1 N% g; }- a" @9 u! E& c
  5.     app.post('/mineBlock', (req, res) => {) j& K. X# o( u) N
  6.         var newBlock = generateNextBlock(req.body.data);
    1 f# d* ^- e0 h  y5 e; q
  7.         addBlock(newBlock);
    $ @$ i/ w# i) L2 t
  8.         broadcast(responseLatestMsg());8 z2 J* z3 S' D" a2 O
  9.         console.log('block added: ' + JSON.stringify(newBlock));8 E$ H* M0 k: o3 S" h9 e* H: c* }
  10.         res.send();
    2 |9 ]! f# \2 g( q) `' p5 U
  11.     });9 z& P% J  d) D9 z. w8 J
  12.     app.get('/peers', (req, res) => {" K" h( n' u; n9 K5 c
  13.         res.send(sockets.map(s => s._socket.remoteAddress + ':' + s._socket.remotePort));/ c" q) X, l6 M1 }* ?' M
  14.     });
    ) M7 m; [4 e1 G3 I4 `+ P
  15.     app.post('/addPeer', (req, res) => {$ R8 _2 J3 O4 S- v! `
  16.         connectToPeers([req.body.peer]);
      y# h, g/ ~8 c) r
  17.         res.send();
    ) x- n9 m( j: G0 C
  18.     });
    9 q9 x: A: v) w; J, O
  19.     app.listen(http_port, () => console.log('Listening http on port: ' + http_port));
    ) Q2 _$ ?; R# t" u
  20. };
复制代码
BitMere.com 比特池塘系信息发布平台,比特池塘仅提供信息存储空间服务。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

成为第一个吐槽的人

青丝暮雪780 初中生
  • 粉丝

    0

  • 关注

    2

  • 主题

    11