在某种程度上用户必须能够控制节点。这一点通过搭建一个HTTP服务器可以实现。5 e8 h- a9 w- R7 ~5 F
- var initHttpServer = () => {
- var app = express();) U; f9 @# L7 t
- app.use(bodyParser.json());
- app.get('/blocks', (req, res) => res.send(JSON.stringify(blockchain)));
- app.post('/mineBlock', (req, res) => {/ d8 O( b# f; Q! | x1 E! a
- var newBlock = generateNextBlock(req.body.data);
- addBlock(newBlock);
- broadcast(responseLatestMsg());+ l, M* g1 Z& N" r- z1 z
- console.log('block added: ' + JSON.stringify(newBlock));
- res.send();
- });
- app.get('/peers', (req, res) => {& \$ P3 k9 H: Y& b* z0 s( {
- res.send(sockets.map(s => s._socket.remoteAddress + ':' + s._socket.remotePort));' @# ?# g9 b' f* X I6 M8 T
- });
- app.post('/addPeer', (req, res) => {
- connectToPeers([req.body.peer]);
- res.send();% s1 z' K8 r$ ?* Q) {: J& l
- });
- app.listen(http_port, () => console.log('Listening http on port: ' + http_port));
- };