User Tools

Site Tools


Sidebar

General

Python Tutorials

WebGL Tutorials

Node.js Tutorials

Node.js in WebStorm


Martin Christen

View Martin Christen's profile on LinkedIn


Twitter

Timeline of @MartinChristen

MartinChristen avatar

RT @snebiker: ‹3DGI 2019› - 4th International Conference on #3D #Geoinformation on 28th of Aug @FHNW with top talks on #AugmentedReality #3…
About 3 hours, 40 mins ago by: Martin Christen (@MartinChristen)

MartinChristen avatar

RT @VictorStinner: Basel in 4 photos: very sunny week, lot of music everywhere, amazing architecture, boat ferry pulled by a cable, people…
About 1 day, 4 hours ago by: Martin Christen (@MartinChristen)

MartinChristen avatar

The team of the FindSolar Code Spint @ #EuroPython at the FHNW Campus Muttenz - open source tool for solar panel cl… https://t.co/0WGf9WBDuH
About 2 days, 9 hours ago by: Martin Christen (@MartinChristen)
node:tutorial03

Node.js Tutorials - Part 0

Node.js Tutorial 3

Handling Request Parameters

In this tutoroal we want to parse request parameters. For example if you request http://localhost:1234/mypath/?a=2&b=5&c=Hello we want to know the values of the result and return it in a JSON String which would look like:

{
  "path": "/mypath/",
  "query": {
    "a": "2",
    "b": "5",
    "c": "Hello"
  }
}

This can be implemented using the “URL” module which is included in the standard node.js installation.

var http = require('http');
var url = require('url');

The http and url modules are stored in the variables “http” and “url”.

var myServer = http.createServer(function (){});

myServer.addListener("request", function(req, res) {
  res.writeHead(200, {'Content-Type': 'application/json'});
  
  var url_parsed = url.parse(req.url, true);
  
  var myObject = {};
  myObject['path'] = url_parsed.pathname;
  myObject['query'] = url_parsed.query;
  res.end(JSON.stringify(myObject, undefined, 2));
});

myServer.listen(1234, '127.0.0.1');

using url.parse the url is parsed and stored in a parsed url object.

The parsed url object contains the “pathname” and the “query”. It also contains other fields like port, host, hash…

One more thing, if you want to run your script as a daemon, you can use “forever”, available at: http://blog.nodejitsu.com/keep-a-nodejs-server-up-with-forever


node/tutorial03.txt · Last modified: 2013/09/16 22:05 by mchristen