Skip to content

Instantly share code, notes, and snippets.

@bbachi
Created February 14, 2019 02:48
Show Gist options
  • Select an option

  • Save bbachi/8a09767684e40dd40780550fbc3ddf89 to your computer and use it in GitHub Desktop.

Select an option

Save bbachi/8a09767684e40dd40780550fbc3ddf89 to your computer and use it in GitHub Desktop.
How to write production ready Node.js Rest API with Javascript- context path
var express = require("express"),
bodyParser = require("body-parser"),
logger = require('./logger/logger'),
app = express(),
port = 3070;
app.use(bodyParser.json());
app.get("/", function(req, res) {
logger.info("default route");
res.send("App works!!!!!");
})
app.use("/api", require("./routes/routes"));
// request to handle undefined or all other routes
app.get("*", function(req, res) {
logger.info("users route");
res.send("App works!!!!!");
})
app.listen(port, function(err) {
logger.info("running server on from port:::::::" + port);
});
var express = require("express"),
apiRouter = express();
apiRouter.use("/user", require('./user'));
module.exports = apiRouter;
var express = require("express"),
bodyParser = require("body-parser"),
logger = require('../logger/logger'),
app = express();
// array to hold users
const users = [{firstName:"fnam1",lastName:"lnam1",userName:"username1"}];
// request to get all the users
app.get("/users", function(req, res) {
logger.info("users route");
res.json(users);
})
// request to get all the users by userName
app.get("/users/:userName", function(req, res) {
logger.info("filter users by username:::::"+req.params.userName);
let user = users.filter(function(user){
if(req.params.userName === user.userName){
return user;
}
})
res.json(user);
})
// request to post the user
//req.body has object of type {firstName:"fnam1",lastName:"lnam1",userName:"username1"}
app.post("/user", function(req, res) {
users.push(req.body);
res.json(users);
})
module.exports = app;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment