diff options
| author | Adam Soltys <[email protected]> | 2017-04-14 19:56:41 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2017-04-14 19:56:41 -0700 |
| commit | 7c5601109ae170cacb8b0df936c97e4006adbb03 (patch) | |
| tree | 4aeb3346d33c5ae30c6b7e8ab7f22f5e079f3c53 /routes/rates.js | |
| parent | b7a4332e9487659532ea50cd8063d0cd44011dce (diff) | |
| download | coinos-server-7c5601109ae170cacb8b0df936c97e4006adbb03.tar.gz coinos-server-7c5601109ae170cacb8b0df936c97e4006adbb03.zip | |
server refactor and jwt auth
Diffstat (limited to 'routes/rates.js')
| -rw-r--r-- | routes/rates.js | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/routes/rates.js b/routes/rates.js new file mode 100644 index 00000000..f81085e3 --- /dev/null +++ b/routes/rates.js @@ -0,0 +1,37 @@ +const request = require('request') + +module.exports = (function (app) { + return { + fetchRates () { + request("https://api.bitcoinaverage.com/exchanges/all", function(error, response, body) { + try { + require('util').isDate(JSON.parse(body).timestamp) + app.set('rates', body) + } catch (undefined) {} + }) + return setTimeout(this.fetchRates, 120000) + }, + index (req, res) { + res.write(app.get('rates')) + }, + ticker (req, res) { + fs = require('fs') + var base, base1, base2, e, error1, exchange + (base = req.query).currency || (base.currency = 'CAD') + (base1 = req.query).symbol || (base1.symbol = 'quadrigacx') + (base2 = req.query).type || (base2.type = 'bid') + try { + exchange = JSON.parse(app.get('rates'))[req.query.currency][req.query.symbol]['rates'][req.query.type].toString() + } catch (error1) { + e = error1 + exchange = "0" + } + res.writeHead(200, { + 'Content-Length': exchange.length, + 'Content-Type': 'text/plain' + }) + res.write(exchange) + return res.end() + } + } +}).call(this) |
