-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathserver.js
65 lines (58 loc) · 1.83 KB
/
server.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
/*eslint no-console:0 */
var express = require('express');
var request = require('request');
var webpack = require('webpack');
var WebpackDevServer = require('webpack-dev-server');
var open = require('open');
var config = require('./webpack.config');
var sessionSecrets = require('./src/lib/SessionSecrets');
var compiler = webpack(config);
var app = express();
process.env.NODE_ENV = process.env.NODE_ENV || 'development';
var isDev = process.env.NODE_ENV === 'development';
var secrets = sessionSecrets();
app.use('/proxy-google', function(req, res) {
req
.pipe(request({
url: 'https://maps.googleapis.com' + require('url').parse(req.url).path,
qs: { key: secrets.google_api_key }
}))
.pipe(res);
});
app.use('/proxy-instagram', function(req, res) {
req
.pipe(request({
url: 'https://api.instagram.com' + require('url').parse(req.url).path,
qs: { client_id: secrets.instagram_client_id }
}))
.pipe(res);
});
app.use('/proxy-foursquare', function(req, res) {
req
.pipe(request({
url: 'https://api.foursquare.com' + require('url').parse(req.url).path,
qs: {
client_id: secrets.foursquare_client_id,
client_secret: secrets.foursquare_client_secret,
v: '20151224'
}
}))
.pipe(res);
});
if (isDev) {
app.listen(config.port - 1);
// webpack dev server
new WebpackDevServer(compiler, config.devServer)
.listen(config.port, 'localhost', function(err) {
if (err) {
console.log(err);
}
console.log('Listening at localhost:' + config.port);
//open('http://localhost:' + config.port + '/webpack-dev-server/');
});
} else {
app.set('port', config.port);
app.use("/", express.static(__dirname + '/dist/'));
app.listen(app.get('port'));
console.log('Listening at ' + __dirname + '/dist/' + ' port:' + app.get('port'));
}