Node.js: Difference between revisions

From air
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
==Description==

[http://nodejs.org/ Node.js] est un canevas événementiel pour réaliser des applications serveur en [[Javascript]].
[http://nodejs.org/ Node.js] est un canevas événementiel pour réaliser des applications serveur en [[Javascript]].



Revision as of 20:04, 25 February 2013

Description

Node.js est un canevas événementiel pour réaliser des applications serveur en Javascript.

Des nombreuses bibliothèques sont disponibles : Assertion Testing Buffer C/C++ Addons Child Processes Cluster Crypto Debugger DNS Domain Events File System Globals HTTP HTTPS Modules Net OS Path Process Punycode Query Strings Readline REPL STDIO Stream String Decoder Timers TLS/SSL TTY UDP/Datagram URL Utilities VM ZLIB


Des nombreux canevas sont construits sur Node.js


Exemples

HTTP script

var port = process.argv[2];

var http = require("http");

function onRequest(request, response) {
  console.log("Receiving a request");
  response.writeHead(200, {"Content-Type": "text/plain"});
  response.write("Hello World");
  response.end();
}

http.createServer(onRequest).listen(port);
console.log("Server started. ^C to kill it");
node hello.js 8888

UDP Datagrams

var dgram = require("dgram");

var server = dgram.createSocket("udp4");

server.on("message", function (msg, rinfo) {
  console.log("server got: " + msg + " from " +
    rinfo.address + ":" + rinfo.port);
});

server.on("listening", function () {
  var address = server.address();
  console.log("server listening " +
      address.address + ":" + address.port);
});

server.bind(41234);
// server listening 0.0.0.0:41234

node dgram.js


Crypto: SHA1 Hashing


var filename = process.argv[2];
var crypto = require('crypto');
var fs = require('fs');

var shasum = crypto.createHash('sha1');

var s = fs.ReadStream(filename);
s.on('data', function(d) {
  shasum.update(d);
});

s.on('end', function() {
  var d = shasum.digest('hex');
  console.log(d + '  ' + filename);
});


node hash.js hash.js