aboutsummaryrefslogtreecommitdiffstats
path: root/app.js
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2018-01-05 14:46:02 -0800
committerAdam Soltys <[email protected]>2018-01-05 14:46:02 -0800
commite73c5018549c338e1dd5be8c0d82e1765ee4741a (patch)
tree4572fafe7ace5e2509b24c180502013523caadba /app.js
parent802922d9e0981fbe0756ccf415354b15922b5070 (diff)
downloadcoinos-server-e73c5018549c338e1dd5be8c0d82e1765ee4741a.tar.gz
coinos-server-e73c5018549c338e1dd5be8c0d82e1765ee4741a.zip
fetch rates using bitcoinaverage rest client
Diffstat (limited to 'app.js')
-rw-r--r--app.js45
1 files changed, 30 insertions, 15 deletions
diff --git a/app.js b/app.js
index 6c2fb5e5..efd9d11c 100644
--- a/app.js
+++ b/app.js
@@ -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)
+
+