diff options
| author | schneefux <schneefux+commit@schneefux.xyz> | 2018-05-07 09:06:04 +0200 |
|---|---|---|
| committer | schneefux <schneefux+commit@schneefux.xyz> | 2018-05-07 09:06:04 +0200 |
| commit | 5caf4e48174533710243e8eeaf52567795ec9d01 (patch) | |
| tree | 1396f09bd14c3c4e1af3164ef924f2190b3f949f /backend/api.js | |
| parent | ded191658af266a764332b9a1b72d628de3d5b6e (diff) | |
| download | brokentalents-5caf4e48174533710243e8eeaf52567795ec9d01.tar.gz brokentalents-5caf4e48174533710243e8eeaf52567795ec9d01.zip | |
move files to backend subdir, push data in submodule
Diffstat (limited to 'backend/api.js')
| -rw-r--r-- | backend/api.js | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/backend/api.js b/backend/api.js new file mode 100644 index 0000000..30b4937 --- /dev/null +++ b/backend/api.js @@ -0,0 +1,42 @@ +#!/usr/bin/node + +const requestP = require('request-promise'), + config = require('./config'), + Future = require('fluture'), + FutureRetry = require('fluture-retry'); + +const API_KEY = process.env.API_KEY || require('./secret').apikey; + +const requestF = Future.encaseP(requestP); + +function apiRequest(path, query) { + return FutureRetry.retryLinearly(requestF({ + uri: config.api.baseUrl + path, + headers: { + 'X-Title-Id': 'semc-vainglory', + 'Authorization': API_KEY + }, + qs: query, + json: true, + gzip: true, + forever: true, + timeout: config.api.timeout * 1000, + strictSSL: true + })); +} + +function awsRequest(url) { + return FutureRetry.retryLinearly(requestF({ + uri: url, + json: true, + gzip: true, + forever: true, + timeout: config.api.timeout * 1000, + strictSSL: true + })); +} + +module.exports = { + apiRequest, + awsRequest, +}; |
