Hi 游客

更多精彩,请登录!

比特池塘 区块链技术 正文
节点控制
! C/ }2 g7 t" t) s/ I在某种程度上用户必须能够控制节点。这一点通过搭建一个HTTP服务器可以实现。
! T2 k& G% x) T: `& v1 d7 ]
  1. var initHttpServer = () => {! T6 Z  ^) U: ~
  2.     var app = express();
    9 F% E: w$ m7 u! U- E. L6 H8 g
  3.     app.use(bodyParser.json());$ b) Y& {, ]( o: G# |
  4.     app.get('/blocks', (req, res) => res.send(JSON.stringify(blockchain)));1 c0 \- ]% o$ h' y' t! S5 ]& q
  5.     app.post('/mineBlock', (req, res) => {
    * x! w3 P$ F- D+ R! J
  6.         var newBlock = generateNextBlock(req.body.data);
    ' a* `5 `" Z" q: |
  7.         addBlock(newBlock);0 O- {& c5 O5 f% C8 H
  8.         broadcast(responseLatestMsg());
    - O8 ^$ |9 C. h
  9.         console.log('block added: ' + JSON.stringify(newBlock));) I! Y  {* t  [- s( R. [5 j
  10.         res.send();4 m' o. h% z4 T# A7 E8 Y2 N! f
  11.     });
    : J& c, g  S$ h1 i
  12.     app.get('/peers', (req, res) => {
    . V! I( X/ \; a) K2 W2 d
  13.         res.send(sockets.map(s => s._socket.remoteAddress + ':' + s._socket.remotePort));
    . i$ d) J  E3 d
  14.     });, i0 G4 S! P: L) x* ~' X
  15.     app.post('/addPeer', (req, res) => {
      d1 ?! F3 E. Y( W( k# I
  16.         connectToPeers([req.body.peer]);; ?) X" u9 ~3 B3 W- a9 o5 N
  17.         res.send();
    / k2 {# F$ X* J* ]
  18.     });+ p; j0 i) M7 V! U$ I
  19.     app.listen(http_port, () => console.log('Listening http on port: ' + http_port));
    * M( O3 r) I: R& x
  20. };
复制代码
BitMere.com 比特池塘系信息发布平台,比特池塘仅提供信息存储空间服务。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

成为第一个吐槽的人

青丝暮雪780 初中生
  • 粉丝

    0

  • 关注

    2

  • 主题

    11