Node.js simple rest service using express.js
1. Create the package.json to include express and body-parser.
{ "name": "simple_rest_api", "version": "1.0.0", "description": "Simple rest api demo", "main": "index.js", "dependencies": { "express": "^4.16.4", "body-parser": "^1.18.3" } }
2. Create the index.js with the following code for creating a simple REST service server app.
const express = require('express') const bodyParser = require('body-parser') const app = express() app.use(bodyParser.urlencoded({ extended: false })) // parse application/x-www-form-urlencoded app.use(bodyParser.json()) // parse application/json function processReq(req, res) { const requestInfo = { 'headers': req.headers, 'url': req.url, 'originalUrl': req.originalUrl, 'method': req.method, 'path': req.path, 'body': req.body } console.log(requestInfo) res.status(200).send(JSON.stringify(requestInfo, null, 2)); } // Accept all GET and POST requests // Accept PUT and DELETE requests on /user app.get('/*', processReq) app.post('/*', processReq) app.put('/user', function (req, res) { res.send('Got a PUT request at /user') }) app.delete('/user', function (req, res) { res.send('Got a DELETE request at /user') }) // Start the server and listen to port 3000 const port = 3000 app.listen(port, () => console.log(`Simple REST service server listening on port ${port}!`))
3. Install and start the simple REST service server.
npm install node index.js
4. curl calls for testing the GET, POST, PUT and DELETE
curl -H "API_TOKEN: 12345" -H "Content-Type: application/json" -X GET http://localhost:3000/hello/world/?userid=123 curl -H "Content-Type: application/json" -X GET http://localhost:3000 curl -X POST http://localhost:3000 curl -X PUT http://localhost:3000/user curl -X DELETE http://localhost:3000/user curl -H "Content-Type: application/json" -X POST -d '{"id":"123","name":"james"}' http://localhost:3000/hello/world/
Search within Codexpedia
Custom Search
Search the entire web
Custom Search
Related Posts