Merge pull request #10 from platform9/nodejs-improvements

Nodejs improvements
This commit is contained in:
Soam Vasani
2016-09-24 12:17:54 -07:00
committed by GitHub
3 changed files with 21 additions and 8 deletions
+2 -1
View File
@@ -15,6 +15,7 @@
"dependencies": { "dependencies": {
"express": "", "express": "",
"minimist": "", "minimist": "",
"body-parser": "" "body-parser": "",
"morgan": ""
} }
} }
+15 -4
View File
@@ -5,12 +5,17 @@ const process = require('process');
const express = require('express'); const express = require('express');
const app = express(); const app = express();
const bodyParser = require('body-parser'); const bodyParser = require('body-parser');
const morgan = require('morgan');
// Command line opts // Command line opts
const argv = require('minimist')(process.argv.slice(1)); const argv = require('minimist')(process.argv.slice(1));
if (!argv.codepath || !argv.port) { if (!argv.codepath) {
console.error("Need --codepath and --port"); console.log("Codepath defaulting to /user.js");
process.exit(1); argv.codepath = "/user.js";
}
if (!argv.port) {
console.log("Port defaulting to 8888");
argv.port = 8888;
} }
// User function. Starts out undefined. // User function. Starts out undefined.
@@ -44,7 +49,13 @@ function specialize(req, res) {
} }
// Request logger
app.use(morgan('combined'))
app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json()); app.use(bodyParser.json());
app.use(bodyParser.raw());
app.post('/specialize', specialize); app.post('/specialize', specialize);
// Generic route -- all http requests go to the user function. // Generic route -- all http requests go to the user function.
@@ -56,7 +67,7 @@ app.all('/', function (req, res) {
const context = { const context = {
request: req, request: req,
response: res response: res
// TODO: context should also have: URL template params, query string, ...anything else? // TODO: context should also have: URL template params, query string
}; };
function callback(status, body, headers) { function callback(status, body, headers) {
if (!status) if (!status)
+3 -2
View File
@@ -1,5 +1,6 @@
module.exports = function (context, callback) { module.exports = function (context, callback) {
console.log("Test function entered"); console.log("headers=", JSON.stringify(context.request.headers));
console.log("body=", JSON.stringify(context.request.body));
callback(200, "Hello, world !\n"); callback(200, "Hello, world !\n");
console.log("Test function exit");
} }