From b42f4dee6a00113c3c9bbedecbcac9903af39080 Mon Sep 17 00:00:00 2001 From: Soam Vasani Date: Sat, 24 Sep 2016 11:47:01 -0700 Subject: [PATCH] Add bodyParser calls for urlencoded and json request content-types --- function-run/nodejs/server.js | 15 +++++++++++---- function-run/nodejs/test/test.js | 9 ++++++--- 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/function-run/nodejs/server.js b/function-run/nodejs/server.js index 059189f4..c2672128 100644 --- a/function-run/nodejs/server.js +++ b/function-run/nodejs/server.js @@ -8,9 +8,13 @@ const bodyParser = require('body-parser'); // Command line opts const argv = require('minimist')(process.argv.slice(1)); -if (!argv.codepath || !argv.port) { - console.error("Need --codepath and --port"); - process.exit(1); +if (!argv.codepath) { + console.log("Codepath defaulting to /user.js"); + argv.codepath = "/user.js"; +} +if (!argv.port) { + console.log("Port defaulting to 8888"); + argv.port = 8888; } // User function. Starts out undefined. @@ -44,7 +48,10 @@ function specialize(req, res) { } +app.use(bodyParser.urlencoded()); app.use(bodyParser.json()); +app.use(bodyParser.raw()); + app.post('/specialize', specialize); // Generic route -- all http requests go to the user function. @@ -56,7 +63,7 @@ app.all('/', function (req, res) { const context = { request: req, 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) { if (!status) diff --git a/function-run/nodejs/test/test.js b/function-run/nodejs/test/test.js index 288ef627..906a5c84 100644 --- a/function-run/nodejs/test/test.js +++ b/function-run/nodejs/test/test.js @@ -1,5 +1,8 @@ module.exports = function (context, callback) { - console.log("Test function entered"); - callback(200, "Hello, world!\n"); - console.log("Test function exit"); + console.log("headers=", JSON.stringify(context.request.headers)); + console.log("body=", JSON.stringify(context.request.body)); + + //console.log(`Test function entered: ${context.request.body}`); + + callback(200, "Hello, world !\n"); }