Node.js: Difference between revisions
Jump to navigation
Jump to search
| Line 5: | Line 5: | ||
===Lancement=== |
===Lancement=== |
||
Aide |
|||
<pre> |
|||
node --help |
|||
</pre> |
|||
Interactif |
Interactif |
||
<pre> |
<pre> |
||
node |
|||
node -p -e "Boolean(process.stdout.isTTY)" |
|||
</pre> |
</pre> |
||
| Line 15: | Line 20: | ||
</pre> |
</pre> |
||
En argument () |
En argument (process.argv[1]) |
||
<pre> |
<pre> |
||
node httpserver.js 8080 |
node httpserver.js 8080 |
||
</pre> |
</pre> |
||
===API=== |
===API=== |
||
Revision as of 20:13, 25 February 2013
Description
Node.js est un canevas événementiel pour réaliser des applications serveur en Javascript.
Lancement
Aide
node --help
Interactif
node
En ligne
node -p -e "Boolean(process.stdout.isTTY)"
En argument (process.argv[1])
node httpserver.js 8080
API
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
Canevas
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
TTY
process.stdout.on('resize', function() {
console.log('screen size has changed!');
console.log(process.stdout.columns + 'x' + process.stdout.rows);
});
node resize.js
$ node -p -e "Boolean(process.stdout.isTTY)" true $ node -p -e "Boolean(process.stdout.isTTY)" | cat false