From 562da81a0fc2de5f775a87182449b56de8998dec Mon Sep 17 00:00:00 2001 From: Connor Turland Date: Sat, 3 Mar 2018 21:49:11 -0500 Subject: [PATCH] add apiProxyMiddleware --- apiProxyMiddleware.js | 21 +++++++++++++++++++++ server.js | 12 ++++++++---- 2 files changed, 29 insertions(+), 4 deletions(-) create mode 100644 apiProxyMiddleware.js diff --git a/apiProxyMiddleware.js b/apiProxyMiddleware.js new file mode 100644 index 00000000..f049c1db --- /dev/null +++ b/apiProxyMiddleware.js @@ -0,0 +1,21 @@ +import request from 'request' + +function apiProxyMiddleware (req, res, next) { + if (true) { // is application/json + return next() + } + console.log(req.get('Content-Type')) + const method = req.method.toLowerCase() + req.pipe( + request[method](url, { + headers: { + ...req.headers, + host: process.env.API + }, + followRedirect: false + }) + ) + .pipe(res) +} + +export default apiProxyMiddleware \ No newline at end of file diff --git a/server.js b/server.js index 7b9169cd..38f890d6 100644 --- a/server.js +++ b/server.js @@ -2,6 +2,8 @@ const path = require('path') const express = require('express') const webpack = require('webpack') const webpackDevMiddleware = require('webpack-dev-middleware') +const apiProxyMiddleware = require('./apiProxyMiddleware') +const port = process.env.PORT || 3000 const app = express(); @@ -13,13 +15,15 @@ const compiler = webpack(config); // configuration file as a base. app.use(webpackDevMiddleware(compiler, { publicPath: config.output.publicPath -})); +})) + +app.use(apiProxyMiddleware) app.get('*', function (req, res) { res.sendFile(path.join(__dirname, 'public/index.html')) }) -// Serve the files on port 3000. -app.listen(3000, function () { - console.log('Metamaps listening on port 3000!\n'); +// Serve the files on set port or port 3000. +app.listen(port, function () { + console.log('Metamaps listening on port ' + port + '\n') }); \ No newline at end of file