diff options
author | kaotisk <kaotisk@arching-kaos.org> | 2023-04-03 08:22:39 +0300 |
---|---|---|
committer | kaotisk <kaotisk@arching-kaos.org> | 2023-04-03 08:22:39 +0300 |
commit | 2f11539eef545fc0a9761693ae55e837b460beac (patch) | |
tree | 566e38f9aee9f0ffc3bc68877ed20767182492c7 /api/routes/getZblock/index.js | |
parent | 05ea0e3dca7209d1490658014c5e598e4d4dfdc4 (diff) | |
download | arching-kaos-tools-2f11539eef545fc0a9761693ae55e837b460beac.tar.gz arching-kaos-tools-2f11539eef545fc0a9761693ae55e837b460beac.tar.bz2 arching-kaos-tools-2f11539eef545fc0a9761693ae55e837b460beac.zip |
Added ak-zblock-show with appropriate route in API with caching feature
Diffstat (limited to 'api/routes/getZblock/index.js')
-rw-r--r-- | api/routes/getZblock/index.js | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/api/routes/getZblock/index.js b/api/routes/getZblock/index.js new file mode 100644 index 0000000..af14ae3 --- /dev/null +++ b/api/routes/getZblock/index.js @@ -0,0 +1,35 @@ +const { spawn } = require('child_process'); +const fs = require("fs"); +const config = require("../../config"); + +/* + * Gets the local latest zblock + * + * Returns: + * - JSON object + * { zlatest: "Qm..." } + * + */ +module.exports = (req, res) => { + const command = spawn("ak-zblock-cache",[req.query.zblock]); + command.stdout.on("data", data => { + }); + + command.stderr.on("data", data => { + console.log(`stderr: ${data}`); + }); + + command.on('error', (error) => { + console.log(`error: ${error.message}`); + }); + + command.on("close", code => { + console.log(`child process exited with code ${code}`); + + if ( code == 0 ) { + res.send(JSON.parse(fs.readFileSync(config.zblockDir+"/"+req.query.zblock))); + } else { + res.send({"error":"error"}); + } + }); +}; |