diff options
| author | Adam Soltys <[email protected]> | 2018-01-05 14:46:02 -0800 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2018-01-05 14:46:02 -0800 |
| commit | e73c5018549c338e1dd5be8c0d82e1765ee4741a (patch) | |
| tree | 4572fafe7ace5e2509b24c180502013523caadba /app.js | |
| parent | 802922d9e0981fbe0756ccf415354b15922b5070 (diff) | |
| download | coinos-server-e73c5018549c338e1dd5be8c0d82e1765ee4741a.tar.gz coinos-server-e73c5018549c338e1dd5be8c0d82e1765ee4741a.zip | |
fetch rates using bitcoinaverage rest client
Diffstat (limited to 'app.js')
| -rw-r--r-- | app.js | 45 |
1 files changed, 30 insertions, 15 deletions
@@ -1,15 +1,15 @@ -const express = require('express') -const bodyParser = require('body-parser') -const cookieParser = require('cookie-parser') -const passport = require('./passport') -const cache = require('./cache') -const dotenv = require('dotenv') -const ba = require('bitcoinaverage') +import express from 'express' +import bodyParser from 'body-parser' +import cookieParser from 'cookie-parser' +import passport from './passport' +import cache from './cache' +import dotenv from 'dotenv' +import ba from 'bitcoinaverage' dotenv.config() require('dotenv').config() -app = express() +const app = express() app.enable('trust proxy') app.use(require('./blockcypher')) app.use(bodyParser.urlencoded({ extended: true })) @@ -17,22 +17,35 @@ app.use(bodyParser.json()) app.use(cookieParser()) app.use(passport.initialize()) -const users = require("./routes/users") -const transactions = require("./routes/transactions") +const users = require('./routes/users') +const transactions = require('./routes/transactions') +const restClient = ba.restfulClient(process.env.BITCOINAVERAGE_PUBLIC, process.env.BITCOINAVERAGE_SECRET) app.get('/users.json', transactions.index) -app.post("/login", users.login) +app.post('/login', users.login) app.post('/users', users.create) app.get('/verify/:token', users.verify) app.post('/:user', users.update) -//app.post('/:user/transactions', transactions.create) +// app.post('/:user/transactions', transactions.create) app.get('/:user/transactions', transactions.index) app.post('/transactions/:txid', transactions.update) -app["delete"]('/:user/transactions/:txid', transactions["delete"]) +app['delete']('/:user/transactions/:txid', transactions['delete']) app.get('/:user.json', users.json) -app.get("/secret", passport.authenticate('jwt', { session: false }), users.secret) +app.get('/secret', passport.authenticate('jwt', { session: false }), users.secret) -app.use(function(err, req, res, next) { +let fetchRates +(fetchRates = () => { + restClient.tickerGlobalPerSymbol('BTCUSD', (data) => { + app.set('rates', JSON.parse(data)) + }) + setTimeout(fetchRates, 120000) +})() + +app.get('/rates', (req, res) => { + res.json(app.get('rates')) +}) + +app.use(function (err, req, res, next) { res.status(500) res.send('An error occurred') console.error(err.stack) @@ -40,3 +53,5 @@ app.use(function(err, req, res, next) { }) app.listen(3000) + + |
