Skip to content

Instantly share code, notes, and snippets.

@ngnguyen1
Forked from LeCoupa/nodejs-cheatsheet.js
Created June 18, 2014 02:54
Show Gist options
  • Select an option

  • Save ngnguyen1/dee7c2db96a84ae82398 to your computer and use it in GitHub Desktop.

Select an option

Save ngnguyen1/dee7c2db96a84ae82398 to your computer and use it in GitHub Desktop.

Revisions

  1. Julien Le Coupanec renamed this gist Jun 16, 2014. 1 changed file with 0 additions and 0 deletions.
    File renamed without changes.
  2. Julien Le Coupanec revised this gist Jun 16, 2014. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -436,7 +436,7 @@ querystring.parse(str, [sep], [eq], [options]); // Deserialize a query string t
    // http://nodejs.org/api/assert.html


    assert.fail(actual, expected, message, operator); // Throws an exception that displays the values for actual and expected separated by the provided operator.
    assert.fail(actual, expected, message, operator); // Throws an exception that displays the values for actual and expected separated by the provided operator.
    assert(value, message); assert.ok(value, [message]); // Tests if value is truthy, it is equivalent to assert.equal(true, !!value, message);
    assert.equal(actual, expected, [message]); // Tests shallow, coercive equality with the equal comparison operator ( == ).
    assert.notEqual(actual, expected, [message]); // Tests shallow, coercive non-equality with the not equal comparison operator ( != ).
  3. Julien Le Coupanec revised this gist Jun 15, 2014. 1 changed file with 14 additions and 13 deletions.
    27 changes: 14 additions & 13 deletions 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -455,16 +455,17 @@ assert.ifError(value); // Tests if value is not a
    // http://nodejs.org/api/os.html


    os.tmpdir(); // Returns the operating system's default directory for temp files.
    os.endianness(); // Returns the endianness of the CPU. Possible values are "BE" or "LE".
    os.hostname(); // Returns the hostname of the operating system.
    os.type(); // Returns the operating system name.
    os.platform(); // Returns the operating system platform.
    os.arch(); // Returns the operating system CPU architecture.
    os.release(); // Returns the operating system release.






    os.tmpdir(); // Returns the operating system's default directory for temp files.
    os.endianness(); // Returns the endianness of the CPU. Possible values are "BE" or "LE".
    os.hostname(); // Returns the hostname of the operating system.
    os.type(); // Returns the operating system name.
    os.platform(); // Returns the operating system platform.
    os.arch(); // Returns the operating system CPU architecture.
    os.release(); // Returns the operating system release.
    os.uptime(); // Returns the system uptime in seconds.
    os.loadavg(); // Returns an array containing the 1, 5, and 15 minute load averages.
    os.totalmem(); // Returns the total amount of system memory in bytes.
    os.freemem(); // Returns the amount of free system memory in bytes.
    os.cpus(); // Returns an array of objects containing information about each CPU/core installed: model, speed (in MHz), and times (an object containing the number of milliseconds the CPU/core spent in: user, nice, sys, idle, and irq).
    os.networkInterfaces(); // Get a list of network interfaces.
    os.EOL; // A constant defining the appropriate End-of-line marker for the operating system.
  4. Julien Le Coupanec revised this gist Jun 15, 2014. 1 changed file with 12 additions and 1 deletion.
    13 changes: 12 additions & 1 deletion 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -456,4 +456,15 @@ assert.ifError(value); // Tests if value is not a


    os.tmpdir(); // Returns the operating system's default directory for temp files.
    os.endianness(); // os.endianness()
    os.endianness(); // Returns the endianness of the CPU. Possible values are "BE" or "LE".
    os.hostname(); // Returns the hostname of the operating system.
    os.type(); // Returns the operating system name.
    os.platform(); // Returns the operating system platform.
    os.arch(); // Returns the operating system CPU architecture.
    os.release(); // Returns the operating system release.






  5. Julien Le Coupanec revised this gist Jun 15, 2014. 1 changed file with 8 additions and 0 deletions.
    8 changes: 8 additions & 0 deletions 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -449,3 +449,11 @@ assert.doesNotThrow(block, [message]); // Expects block not to th
    assert.ifError(value); // Tests if value is not a false value, throws if it is a true value. Useful when testing the first argument, error in callbacks.


    // 15. OS.
    // Provides a few basic operating-system related utility functions.
    // Use require('os') to access this module.
    // http://nodejs.org/api/os.html


    os.tmpdir(); // Returns the operating system's default directory for temp files.
    os.endianness(); // os.endianness()
  6. Julien Le Coupanec revised this gist Jun 15, 2014. 1 changed file with 17 additions and 0 deletions.
    17 changes: 17 additions & 0 deletions 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -431,4 +431,21 @@ querystring.stringify(obj, [sep], [eq]); // Serialize an object to a que
    querystring.parse(str, [sep], [eq], [options]); // Deserialize a query string to an object. Optionally override the default separator ('&') and assignment ('=') characters.


    // 14. Assert.
    // This module is used for writing unit tests for your applications, you can access it with require('assert').
    // http://nodejs.org/api/assert.html


    assert.fail(actual, expected, message, operator); // Throws an exception that displays the values for actual and expected separated by the provided operator.
    assert(value, message); assert.ok(value, [message]); // Tests if value is truthy, it is equivalent to assert.equal(true, !!value, message);
    assert.equal(actual, expected, [message]); // Tests shallow, coercive equality with the equal comparison operator ( == ).
    assert.notEqual(actual, expected, [message]); // Tests shallow, coercive non-equality with the not equal comparison operator ( != ).
    assert.deepEqual(actual, expected, [message]); // Tests for deep equality.
    assert.notDeepEqual(actual, expected, [message]); // Tests for any deep inequality.
    assert.strictEqual(actual, expected, [message]); // Tests strict equality, as determined by the strict equality operator ( === )
    assert.notStrictEqual(actual, expected, [message]); // Tests strict non-equality, as determined by the strict not equal operator ( !== )
    assert.throws(block, [error], [message]); // Expects block to throw an error. error can be constructor, RegExp or validation function.
    assert.doesNotThrow(block, [message]); // Expects block not to throw an error, see assert.throws for details.
    assert.ifError(value); // Tests if value is not a false value, throws if it is a true value. Useful when testing the first argument, error in callbacks.


  7. Julien Le Coupanec revised this gist Jun 15, 2014. 1 changed file with 0 additions and 3 deletions.
    3 changes: 0 additions & 3 deletions 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -431,7 +431,4 @@ querystring.stringify(obj, [sep], [eq]); // Serialize an object to a que
    querystring.parse(str, [sep], [eq], [options]); // Deserialize a query string to an object. Optionally override the default separator ('&') and assignment ('=') characters.


    // 14. REPL.
    // By executing node without any arguments from the command-line you will be dropped into the REPL.
    // http://nodejs.org/api/repl.html

  8. Julien Le Coupanec revised this gist Jun 15, 2014. 1 changed file with 16 additions and 1 deletion.
    17 changes: 16 additions & 1 deletion 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -419,4 +419,19 @@ message.setTimeout(msecs, callback); // Calls message.connection.setTimeout(m

    url.parse(urlStr, [parseQueryString], [slashesDenoteHost]); // Take a URL string, and return an object.
    url.format(urlObj); // Take a parsed URL object, and return a formatted URL string.
    url.resolve(from, to); // Take a base URL, and a href URL, and resolve them as a browser would for an anchor tag.
    url.resolve(from, to); // Take a base URL, and a href URL, and resolve them as a browser would for an anchor tag.


    // 13. Query String.
    // This module provides utilities for dealing with query strings. Call require('querystring') to use it.
    // http://nodejs.org/api/querystring.html


    querystring.stringify(obj, [sep], [eq]); // Serialize an object to a query string. Optionally override the default separator ('&') and assignment ('=') characters.
    querystring.parse(str, [sep], [eq], [options]); // Deserialize a query string to an object. Optionally override the default separator ('&') and assignment ('=') characters.


    // 14. REPL.
    // By executing node without any arguments from the command-line you will be dropped into the REPL.
    // http://nodejs.org/api/repl.html

  9. Julien Le Coupanec revised this gist Jun 15, 2014. 1 changed file with 2 additions and 2 deletions.
    4 changes: 2 additions & 2 deletions 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -418,5 +418,5 @@ message.setTimeout(msecs, callback); // Calls message.connection.setTimeout(m


    url.parse(urlStr, [parseQueryString], [slashesDenoteHost]); // Take a URL string, and return an object.
    url.format(urlObj); // Take a parsed URL object, and return a formatted URL string.
    url.resolve(from, to); // Take a base URL, and a href URL, and resolve them as a browser would for an anchor tag.
    url.format(urlObj); // Take a parsed URL object, and return a formatted URL string.
    url.resolve(from, to); // Take a base URL, and a href URL, and resolve them as a browser would for an anchor tag.
  10. Julien Le Coupanec revised this gist Jun 15, 2014. 1 changed file with 11 additions and 1 deletion.
    12 changes: 11 additions & 1 deletion 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -324,7 +324,7 @@ fs.createReadStream(path, [options]); // Returns a new ReadStream object.
    fs.createWriteStream(path, [options]); // Returns a new WriteStream object.


    // 10. File System.
    // 10. Path.
    // Use require('path') to use this module.
    // This module contains utilities for handling and transforming file paths.
    // Almost all these methods perform only string transformations.
    @@ -410,3 +410,13 @@ message.statusCode; // The 3-digit HTTP response status code
    message.socket; // The net.Socket object associated with the connection.

    message.setTimeout(msecs, callback); // Calls message.connection.setTimeout(msecs, callback).


    // 12. URL.
    // This module has utilities for URL resolution and parsing. Call require('url') to use it.
    // http://nodejs.org/api/url.html


    url.parse(urlStr, [parseQueryString], [slashesDenoteHost]); // Take a URL string, and return an object.
    url.format(urlObj); // Take a parsed URL object, and return a formatted URL string.
    url.resolve(from, to); // Take a base URL, and a href URL, and resolve them as a browser would for an anchor tag.
  11. Julien Le Coupanec revised this gist Jun 15, 2014. 1 changed file with 10 additions and 0 deletions.
    10 changes: 10 additions & 0 deletions 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -400,3 +400,13 @@ response.sendDate; // When true, the

    response.on('close', function () { }); // Indicates that the underlying connection was terminated before response.end() was called or able to flush.
    response.on('finish', function() { }); // Emitted when the response has been sent.

    message.httpVersion; // In case of server request, the HTTP version sent by the client. In the case of client response, the HTTP version of the connected-to server.
    message.headers; // The request/response headers object.
    message.trailers; // The request/response trailers object. Only populated after the 'end' event.
    message.method; // The request method as a string. Read only. Example: 'GET', 'DELETE'.
    message.url; // Request URL string. This contains only the URL that is present in the actual HTTP request.
    message.statusCode; // The 3-digit HTTP response status code. E.G. 404.
    message.socket; // The net.Socket object associated with the connection.

    message.setTimeout(msecs, callback); // Calls message.connection.setTimeout(msecs, callback).
  12. Julien Le Coupanec revised this gist Jun 15, 2014. 1 changed file with 7 additions and 7 deletions.
    14 changes: 7 additions & 7 deletions 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -349,16 +349,16 @@ path.delimiter; // The platform-specific path delimiter, '
    // http://nodejs.org/api/http.html


    http.STATUS_CODES; // A collection of all the standard HTTP response status codes, and the short description of each.
    http.STATUS_CODES; // A collection of all the standard HTTP response status codes, and the short description of each.
    http.request(options, [callback]); // This function allows one to transparently issue requests.
    http.get(options, [callback]); // Set the method to GET and calls req.end() automatically.

    server = http.createServer([requestListener]); // Returns a new web server object. The requestListener is a function which is automatically added to the 'request' event.
    server.listen(port, [hostname], [backlog], [callback]); // Begin accepting connections on the specified port and hostname.
    server.listen(path, [callback]); // Start a UNIX socket server listening for connections on the given path.
    server.listen(handle, [callback]); // The handle object can be set to either a server or socket (anything with an underlying _handle member), or a {fd: <n>} object.
    server.close([callback]); // Stops the server from accepting new connections.
    server.setTimeout(msecs, callback); // Sets the timeout value for sockets, and emits a 'timeout' event on the Server object, passing the socket as an argument, if a timeout occurs.
    server = http.createServer([requestListener]); // Returns a new web server object. The requestListener is a function which is automatically added to the 'request' event.
    server.listen(port, [hostname], [backlog], [callback]); // Begin accepting connections on the specified port and hostname.
    server.listen(path, [callback]); // Start a UNIX socket server listening for connections on the given path.
    server.listen(handle, [callback]); // The handle object can be set to either a server or socket (anything with an underlying _handle member), or a {fd: <n>} object.
    server.close([callback]); // Stops the server from accepting new connections.
    server.setTimeout(msecs, callback); // Sets the timeout value for sockets, and emits a 'timeout' event on the Server object, passing the socket as an argument, if a timeout occurs.

    server.maxHeadersCount; // Limits maximum incoming headers count, equal to 1000 by default. If set to 0 - no limit will be applied.
    server.timeout; // The number of milliseconds of inactivity before a socket is presumed to have timed out.
  13. Julien Le Coupanec revised this gist Jun 15, 2014. 1 changed file with 9 additions and 0 deletions.
    9 changes: 9 additions & 0 deletions 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -371,9 +371,18 @@ server.on('connect', function (request, socket, head) { }); // Emitted each t
    server.on('upgrade', function (request, socket, head) { }); // Emitted each time a client requests a http upgrade.
    server.on('clientError', function (exception, socket) { }); // If a client connection emits an 'error' event - it will forwarded here.

    request.write(chunk, [encoding]); // Sends a chunk of the body.
    request.end([data], [encoding]); // Finishes sending the request. If any parts of the body are unsent, it will flush them to the stream.
    request.abort(); // Aborts a request.
    request.setTimeout(timeout, [callback]); // Once a socket is assigned to this request and is connected socket.setTimeout() will be called.
    request.setNoDelay([noDelay]); // Once a socket is assigned to this request and is connected socket.setNoDelay() will be called.
    request.setSocketKeepAlive([enable], [initialDelay]); // Once a socket is assigned to this request and is connected socket.setKeepAlive() will be called.

    request.on('response', function(response) { }); // Emitted when a response is received to this request. This event is emitted only once.
    request.on('socket', function(socket) { }); // Emitted after a socket is assigned to this request.
    request.on('connect', function(response, socket, head) { }); // Emitted each time a server responds to a request with a CONNECT method. If this event isn't being listened for, clients receiving a CONNECT method will have their connections closed.
    request.on('upgrade', function(response, socket, head) { }); // Emitted each time a server responds to a request with an upgrade. If this event isn't being listened for, clients receiving an upgrade header will have their connections closed.
    request.on('continue', function() { }); // Emitted when the server sends a '100 Continue' HTTP response, usually because the request contained 'Expect: 100-continue'. This is an instruction that the client should send the request body.

    response.write(chunk, [encoding]); // This sends a chunk of the response body. If this merthod is called and response.writeHead() has not been called, it will switch to implicit header mode and flush the implicit headers.
    response.writeContinue(); // Sends a HTTP/1.1 100 Continue message to the client, indicating that the request body should be sent.
  14. Julien Le Coupanec revised this gist Jun 15, 2014. 1 changed file with 13 additions and 10 deletions.
    23 changes: 13 additions & 10 deletions 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -349,14 +349,16 @@ path.delimiter; // The platform-specific path delimiter, '
    // http://nodejs.org/api/http.html


    http.STATUS_CODES; // A collection of all the standard HTTP response status codes, and the short description of each.
    http.STATUS_CODES; // A collection of all the standard HTTP response status codes, and the short description of each.
    http.request(options, [callback]); // This function allows one to transparently issue requests.
    http.get(options, [callback]); // Set the method to GET and calls req.end() automatically.

    server = http.createServer([requestListener]); // Returns a new web server object. The requestListener is a function which is automatically added to the 'request' event.
    server.listen(port, [hostname], [backlog], [callback]); // Begin accepting connections on the specified port and hostname.
    server.listen(path, [callback]); // Start a UNIX socket server listening for connections on the given path.
    server.listen(handle, [callback]); // The handle object can be set to either a server or socket (anything with an underlying _handle member), or a {fd: <n>} object.
    server.close([callback]); // Stops the server from accepting new connections.
    server.setTimeout(msecs, callback); // Sets the timeout value for sockets, and emits a 'timeout' event on the Server object, passing the socket as an argument, if a timeout occurs.
    server = http.createServer([requestListener]); // Returns a new web server object. The requestListener is a function which is automatically added to the 'request' event.
    server.listen(port, [hostname], [backlog], [callback]); // Begin accepting connections on the specified port and hostname.
    server.listen(path, [callback]); // Start a UNIX socket server listening for connections on the given path.
    server.listen(handle, [callback]); // The handle object can be set to either a server or socket (anything with an underlying _handle member), or a {fd: <n>} object.
    server.close([callback]); // Stops the server from accepting new connections.
    server.setTimeout(msecs, callback); // Sets the timeout value for sockets, and emits a 'timeout' event on the Server object, passing the socket as an argument, if a timeout occurs.

    server.maxHeadersCount; // Limits maximum incoming headers count, equal to 1000 by default. If set to 0 - no limit will be applied.
    server.timeout; // The number of milliseconds of inactivity before a socket is presumed to have timed out.
    @@ -369,10 +371,11 @@ server.on('connect', function (request, socket, head) { }); // Emitted each t
    server.on('upgrade', function (request, socket, head) { }); // Emitted each time a client requests a http upgrade.
    server.on('clientError', function (exception, socket) { }); // If a client connection emits an 'error' event - it will forwarded here.

    http.request(options, [callback]); // This function allows one to transparently issue requests.
    http.get(options, [callback]); // Set the method to GET and calls req.end() automatically.
    request.on('response', function(response) { }); // Emitted when a response is received to this request. This event is emitted only once.
    request.on('socket', function(socket) { }); // Emitted after a socket is assigned to this request.
    request.on('connect', function(response, socket, head) { }); // Emitted each time a server responds to a request with a CONNECT method. If this event isn't being listened for, clients receiving a CONNECT method will have their connections closed.

    response.write(chunk, [encoding]); // This sends a chunk of the response body. If this method is called and response.writeHead() has not been called, it will switch to implicit header mode and flush the implicit headers.
    response.write(chunk, [encoding]); // This sends a chunk of the response body. If this merthod is called and response.writeHead() has not been called, it will switch to implicit header mode and flush the implicit headers.
    response.writeContinue(); // Sends a HTTP/1.1 100 Continue message to the client, indicating that the request body should be sent.
    response.writeHead(statusCode, [reasonPhrase], [headers]); // Sends a response header to the request.
    response.setTimeout(msecs, callback); // Sets the Socket's timeout value to msecs. If a callback is provided, then it is added as a listener on the 'timeout' event on the response object.
  15. Julien Le Coupanec revised this gist Jun 15, 2014. 1 changed file with 2 additions and 2 deletions.
    4 changes: 2 additions & 2 deletions 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -370,7 +370,7 @@ server.on('upgrade', function (request, socket, head) { }); // Emitted each t
    server.on('clientError', function (exception, socket) { }); // If a client connection emits an 'error' event - it will forwarded here.

    http.request(options, [callback]); // This function allows one to transparently issue requests.
    http.get(options, [callback]); // Set the method to GET and calls req.end() automatically.
    http.get(options, [callback]); // Set the method to GET and calls req.end() automatically.

    response.write(chunk, [encoding]); // This sends a chunk of the response body. If this method is called and response.writeHead() has not been called, it will switch to implicit header mode and flush the implicit headers.
    response.writeContinue(); // Sends a HTTP/1.1 100 Continue message to the client, indicating that the request body should be sent.
    @@ -380,7 +380,7 @@ response.setHeader(name, value); // Sets a single
    response.getHeader(name); // Reads out a header that's already been queued but not sent to the client. Note that the name is case insensitive.
    response.removeHeader(name); // Removes a header that's queued for implicit sending.
    response.addTrailers(headers); // This method adds HTTP trailing headers (a header but at the end of the message) to the response.
    response.end([data], [encoding]); // This method signals to the server that all of the response headers and body have been sent; that server should consider this message complete. The method, response.end(), MUST be called on each response.
    response.end([data], [encoding]); // This method signals to the server that all of the response headers and body have been sent; that server should consider this message complete. The method, response.end(), MUST be called on each response.

    response.statusCode; // When using implicit headers (not calling response.writeHead() explicitly), this property controls the status code that will be sent to the client when the headers get flushed.
    response.headersSent; // Boolean (read-only). True if headers were sent, false otherwise.
  16. Julien Le Coupanec revised this gist Jun 15, 2014. 1 changed file with 6 additions and 1 deletion.
    7 changes: 6 additions & 1 deletion 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -369,13 +369,18 @@ server.on('connect', function (request, socket, head) { }); // Emitted each t
    server.on('upgrade', function (request, socket, head) { }); // Emitted each time a client requests a http upgrade.
    server.on('clientError', function (exception, socket) { }); // If a client connection emits an 'error' event - it will forwarded here.

    response.write(chunk, [encoding]); // If this method is called and response.writeHead() has not been called, it will switch to implicit header mode and flush the implicit headers.
    http.request(options, [callback]); // This function allows one to transparently issue requests.
    http.get(options, [callback]); // Set the method to GET and calls req.end() automatically.

    response.write(chunk, [encoding]); // This sends a chunk of the response body. If this method is called and response.writeHead() has not been called, it will switch to implicit header mode and flush the implicit headers.
    response.writeContinue(); // Sends a HTTP/1.1 100 Continue message to the client, indicating that the request body should be sent.
    response.writeHead(statusCode, [reasonPhrase], [headers]); // Sends a response header to the request.
    response.setTimeout(msecs, callback); // Sets the Socket's timeout value to msecs. If a callback is provided, then it is added as a listener on the 'timeout' event on the response object.
    response.setHeader(name, value); // Sets a single header value for implicit headers. If this header already exists in the to-be-sent headers, its value will be replaced. Use an array of strings here if you need to send multiple headers with the same name.
    response.getHeader(name); // Reads out a header that's already been queued but not sent to the client. Note that the name is case insensitive.
    response.removeHeader(name); // Removes a header that's queued for implicit sending.
    response.addTrailers(headers); // This method adds HTTP trailing headers (a header but at the end of the message) to the response.
    response.end([data], [encoding]); // This method signals to the server that all of the response headers and body have been sent; that server should consider this message complete. The method, response.end(), MUST be called on each response.

    response.statusCode; // When using implicit headers (not calling response.writeHead() explicitly), this property controls the status code that will be sent to the client when the headers get flushed.
    response.headersSent; // Boolean (read-only). True if headers were sent, false otherwise.
  17. Julien Le Coupanec revised this gist Jun 15, 2014. 1 changed file with 1 addition and 0 deletions.
    1 change: 1 addition & 0 deletions 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -369,6 +369,7 @@ server.on('connect', function (request, socket, head) { }); // Emitted each t
    server.on('upgrade', function (request, socket, head) { }); // Emitted each time a client requests a http upgrade.
    server.on('clientError', function (exception, socket) { }); // If a client connection emits an 'error' event - it will forwarded here.

    response.write(chunk, [encoding]); // If this method is called and response.writeHead() has not been called, it will switch to implicit header mode and flush the implicit headers.
    response.writeContinue(); // Sends a HTTP/1.1 100 Continue message to the client, indicating that the request body should be sent.
    response.writeHead(statusCode, [reasonPhrase], [headers]); // Sends a response header to the request.
    response.setTimeout(msecs, callback); // Sets the Socket's timeout value to msecs. If a callback is provided, then it is added as a listener on the 'timeout' event on the response object.
  18. Julien Le Coupanec revised this gist Jun 15, 2014. 1 changed file with 5 additions and 2 deletions.
    7 changes: 5 additions & 2 deletions 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -370,12 +370,15 @@ server.on('upgrade', function (request, socket, head) { }); // Emitted each t
    server.on('clientError', function (exception, socket) { }); // If a client connection emits an 'error' event - it will forwarded here.

    response.writeContinue(); // Sends a HTTP/1.1 100 Continue message to the client, indicating that the request body should be sent.
    response.writeHead(statusCode, [reasonPhrase], [headers]); // Sends a response header to the request.
    response.writeHead(statusCode, [reasonPhrase], [headers]); // Sends a response header to the request.
    response.setTimeout(msecs, callback); // Sets the Socket's timeout value to msecs. If a callback is provided, then it is added as a listener on the 'timeout' event on the response object.
    response.setHeader(name, value); // Sets a single header value for implicit headers. If this header already exists in the to-be-sent headers, its value will be replaced. Use an array of strings here if you need to send multiple headers with the same name.
    response.getHeader(name); // Reads out a header that's already been queued but not sent to the client. Note that the name is case insensitive.
    response.removeHeader(name); // Removes a header that's queued for implicit sending.

    response.statusCode; // When using implicit headers (not calling response.writeHead() explicitly), this property controls the status code that will be sent to the client when the headers get flushed.

    response.headersSent; // Boolean (read-only). True if headers were sent, false otherwise.
    response.sendDate; // When true, the Date header will be automatically generated and sent in the response if it is not already present in the headers. Defaults to true.

    response.on('close', function () { }); // Indicates that the underlying connection was terminated before response.end() was called or able to flush.
    response.on('finish', function() { }); // Emitted when the response has been sent.
  19. Julien Le Coupanec revised this gist Jun 15, 2014. 1 changed file with 16 additions and 1 deletion.
    17 changes: 16 additions & 1 deletion 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -351,10 +351,15 @@ path.delimiter; // The platform-specific path delimiter, '

    http.STATUS_CODES; // A collection of all the standard HTTP response status codes, and the short description of each.

    http.createServer([requestListener]); // Returns a new web server object. The requestListener is a function which is automatically added to the 'request' event.
    server = http.createServer([requestListener]); // Returns a new web server object. The requestListener is a function which is automatically added to the 'request' event.
    server.listen(port, [hostname], [backlog], [callback]); // Begin accepting connections on the specified port and hostname.
    server.listen(path, [callback]); // Start a UNIX socket server listening for connections on the given path.
    server.listen(handle, [callback]); // The handle object can be set to either a server or socket (anything with an underlying _handle member), or a {fd: <n>} object.
    server.close([callback]); // Stops the server from accepting new connections.
    server.setTimeout(msecs, callback); // Sets the timeout value for sockets, and emits a 'timeout' event on the Server object, passing the socket as an argument, if a timeout occurs.

    server.maxHeadersCount; // Limits maximum incoming headers count, equal to 1000 by default. If set to 0 - no limit will be applied.
    server.timeout; // The number of milliseconds of inactivity before a socket is presumed to have timed out.

    server.on('request', function (request, response) { }); // Emitted each time there is a request.
    server.on('connection', function (socket) { }); // When a new TCP stream is established.
    @@ -364,3 +369,13 @@ server.on('connect', function (request, socket, head) { }); // Emitted each t
    server.on('upgrade', function (request, socket, head) { }); // Emitted each time a client requests a http upgrade.
    server.on('clientError', function (exception, socket) { }); // If a client connection emits an 'error' event - it will forwarded here.

    response.writeContinue(); // Sends a HTTP/1.1 100 Continue message to the client, indicating that the request body should be sent.
    response.writeHead(statusCode, [reasonPhrase], [headers]); // Sends a response header to the request.
    response.setTimeout(msecs, callback); // Sets the Socket's timeout value to msecs. If a callback is provided, then it is added as a listener on the 'timeout' event on the response object.
    response.setHeader(name, value); // Sets a single header value for implicit headers. If this header already exists in the to-be-sent headers, its value will be replaced. Use an array of strings here if you need to send multiple headers with the same name.

    response.statusCode; // When using implicit headers (not calling response.writeHead() explicitly), this property controls the status code that will be sent to the client when the headers get flushed.


    response.on('close', function () { }); // Indicates that the underlying connection was terminated before response.end() was called or able to flush.
    response.on('finish', function() { }); // Emitted when the response has been sent.
  20. Julien Le Coupanec revised this gist Jun 15, 2014. 1 changed file with 5 additions and 2 deletions.
    7 changes: 5 additions & 2 deletions 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -349,9 +349,12 @@ path.delimiter; // The platform-specific path delimiter, '
    // http://nodejs.org/api/http.html


    http.STATUS_CODES; // A collection of all the standard HTTP response status codes, and the short description of each.
    http.STATUS_CODES; // A collection of all the standard HTTP response status codes, and the short description of each.

    http.createServer([requestListener]) // Returns a new web server object. The requestListener is a function which is automatically added to the 'request' event.
    http.createServer([requestListener]); // Returns a new web server object. The requestListener is a function which is automatically added to the 'request' event.
    server.listen(port, [hostname], [backlog], [callback]); // Begin accepting connections on the specified port and hostname.
    server.listen(path, [callback]); // Start a UNIX socket server listening for connections on the given path.
    server.listen(handle, [callback]); // The handle object can be set to either a server or socket (anything with an underlying _handle member), or a {fd: <n>} object.

    server.on('request', function (request, response) { }); // Emitted each time there is a request.
    server.on('connection', function (socket) { }); // When a new TCP stream is established.
  21. Julien Le Coupanec revised this gist Jun 15, 2014. 1 changed file with 12 additions and 0 deletions.
    12 changes: 12 additions & 0 deletions 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -349,3 +349,15 @@ path.delimiter; // The platform-specific path delimiter, '
    // http://nodejs.org/api/http.html


    http.STATUS_CODES; // A collection of all the standard HTTP response status codes, and the short description of each.

    http.createServer([requestListener]) // Returns a new web server object. The requestListener is a function which is automatically added to the 'request' event.

    server.on('request', function (request, response) { }); // Emitted each time there is a request.
    server.on('connection', function (socket) { }); // When a new TCP stream is established.
    server.on('close', function () { }); // Emitted when the server closes.
    server.on('checkContinue', function (request, response) { }); // Emitted each time a request with an http Expect: 100-continue is received.
    server.on('connect', function (request, socket, head) { }); // Emitted each time a client requests a http CONNECT method.
    server.on('upgrade', function (request, socket, head) { }); // Emitted each time a client requests a http upgrade.
    server.on('clientError', function (exception, socket) { }); // If a client connection emits an 'error' event - it will forwarded here.

  22. Julien Le Coupanec revised this gist Jun 15, 2014. 1 changed file with 4 additions and 0 deletions.
    4 changes: 4 additions & 0 deletions 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -344,4 +344,8 @@ path.sep; // The platform-specific file separator. '
    path.delimiter; // The platform-specific path delimiter, ';' or ':'.


    // 11. HTTP.
    // To use the HTTP server and client one must require('http').
    // http://nodejs.org/api/http.html


  23. Julien Le Coupanec revised this gist Jun 15, 2014. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -341,7 +341,7 @@ path.basename(p, [ext]); // Return the last portion of a path. Simi
    path.extname(p); // Return the extension of the path, from the last '.' to end of string in the last portion of the path.

    path.sep; // The platform-specific file separator. '\\' or '/'.
    path.delimiter; // The platform-specific path delimiter, ; or ':'.
    path.delimiter; // The platform-specific path delimiter, ';' or ':'.



  24. Julien Le Coupanec revised this gist Jun 15, 2014. 1 changed file with 6 additions and 6 deletions.
    12 changes: 6 additions & 6 deletions 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -202,12 +202,12 @@ readable.on('error', function() {}); // Emitted if there was an error recei
    // This method should only be called in non-flowing mode. In flowing-mode, this method is called automatically until the internal buffer is drained.
    readable.read([size]);

    readable.setEncoding(encoding); // Call this function to cause the stream to return strings of the specified encoding instead of Buffer objects.
    readable.resume(); // This method will cause the readable stream to resume emitting data events.
    readable.pause(); // This method will cause a stream in flowing-mode to stop emitting data events.
    readable.pipe(destination, [options]); // This method pulls all the data out of a readable stream, and writes it to the supplied destination, automatically managing the flow so that the destination is not overwhelmed by a fast readable stream.
    readable.unpipe([destination]); // This method will remove the hooks set up for a previous pipe() call. If the destination is not specified, then all pipes are removed.
    readable.unshift(chunk); // This is useful in certain cases where a stream is being consumed by a parser, which needs to "un-consume" some data that it has optimistically pulled out of the source, so that the stream can be passed on to some other party.
    readable.setEncoding(encoding); // Call this function to cause the stream to return strings of the specified encoding instead of Buffer objects.
    readable.resume(); // This method will cause the readable stream to resume emitting data events.
    readable.pause(); // This method will cause a stream in flowing-mode to stop emitting data events.
    readable.pipe(destination, [options]); // This method pulls all the data out of a readable stream, and writes it to the supplied destination, automatically managing the flow so that the destination is not overwhelmed by a fast readable stream.
    readable.unpipe([destination]); // This method will remove the hooks set up for a previous pipe() call. If the destination is not specified, then all pipes are removed.
    readable.unshift(chunk); // This is useful in certain cases where a stream is being consumed by a parser, which needs to "un-consume" some data that it has optimistically pulled out of the source, so that the stream can be passed on to some other party.


    // The Writable stream interface is an abstraction for a destination that you are writing data to.
  25. Julien Le Coupanec revised this gist Jun 15, 2014. 1 changed file with 11 additions and 11 deletions.
    22 changes: 11 additions & 11 deletions 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -202,12 +202,12 @@ readable.on('error', function() {}); // Emitted if there was an error recei
    // This method should only be called in non-flowing mode. In flowing-mode, this method is called automatically until the internal buffer is drained.
    readable.read([size]);

    readable.setEncoding(encoding); // Call this function to cause the stream to return strings of the specified encoding instead of Buffer objects.
    readable.resume(); // This method will cause the readable stream to resume emitting data events.
    readable.pause(); // This method will cause a stream in flowing-mode to stop emitting data events.
    readable.pipe(destination, [options]); // This method pulls all the data out of a readable stream, and writes it to the supplied destination, automatically managing the flow so that the destination is not overwhelmed by a fast readable stream.
    readable.unpipe([destination]); // This method will remove the hooks set up for a previous pipe() call. If the destination is not specified, then all pipes are removed.
    readable.unshift(chunk); // This is useful in certain cases where a stream is being consumed by a parser, which needs to "un-consume" some data that it has optimistically pulled out of the source, so that the stream can be passed on to some other party.
    readable.setEncoding(encoding); // Call this function to cause the stream to return strings of the specified encoding instead of Buffer objects.
    readable.resume(); // This method will cause the readable stream to resume emitting data events.
    readable.pause(); // This method will cause a stream in flowing-mode to stop emitting data events.
    readable.pipe(destination, [options]); // This method pulls all the data out of a readable stream, and writes it to the supplied destination, automatically managing the flow so that the destination is not overwhelmed by a fast readable stream.
    readable.unpipe([destination]); // This method will remove the hooks set up for a previous pipe() call. If the destination is not specified, then all pipes are removed.
    readable.unshift(chunk); // This is useful in certain cases where a stream is being consumed by a parser, which needs to "un-consume" some data that it has optimistically pulled out of the source, so that the stream can be passed on to some other party.


    // The Writable stream interface is an abstraction for a destination that you are writing data to.
    @@ -276,8 +276,8 @@ fs.readlinkSync(path); // Synchronous readlink. Return
    fs.unlink(path, callback); // Asynchronous unlink. No arguments other than a possible exception are given to the completion callback.
    fs.unlinkSync(path); // Synchronous unlink.

    fs.realpath(path, [cache], callback); // Asynchronous realpath. The callback gets two arguments (err, resolvedPath).
    fs.realpathSync(path, [cache]); // Synchronous realpath. Returns the resolved path.
    fs.realpath(path, [cache], callback); // Asynchronous realpath. The callback gets two arguments (err, resolvedPath).
    fs.realpathSync(path, [cache]); // Synchronous realpath. Returns the resolved path.

    fs.rmdir(path, callback); // Asynchronous rmdir. No arguments other than a possible exception are given to the completion callback.
    fs.rmdirSync(path); // Synchronous rmdir.
    @@ -308,8 +308,8 @@ fs.writeFileSync(filename, data, [options]); // The synchronous version
    fs.appendFile(filename, data, [options], callback); // Asynchronously append data to a file, creating the file if it not yet exists. data can be a string or a buffer.
    fs.appendFileSync(filename, data, [options]); // The synchronous version of fs.appendFile.
    fs.watch(filename, [options], [listener]); // Watch for changes on filename, where filename is either a file or a directory. The returned object is a fs.FSWatcher. The listener callback gets two arguments (event, filename). event is either 'rename' or 'change', and filename is the name of the file which triggered the event.
    fs.exists(path, callback); // Test whether or not the given path exists by checking with the file system. Then call the callback argument with either true or false. (should not be used)
    fs.existsSync(path); // Synchronous version of fs.exists. (should not be used)
    fs.exists(path, callback); // Test whether or not the given path exists by checking with the file system. Then call the callback argument with either true or false. (should not be used)
    fs.existsSync(path); // Synchronous version of fs.exists. (should not be used)

    // fs.Stats: objects returned from fs.stat(), fs.lstat() and fs.fstat() and their synchronous counterparts are of this type.
    stats.isFile();
    @@ -333,7 +333,7 @@ fs.createWriteStream(path, [options]); // Returns a new WriteStream object.


    path.normalize(p); // Normalize a string path, taking care of '..' and '.' parts.
    path.join([path1], [path2], [...]); // Join all arguments together and normalize the resulting path.
    path.join([path1], [path2], [...]); // Join all arguments together and normalize the resulting path.
    path.resolve([from ...], to); // Resolves 'to' to an absolute path.
    path.relative(from, to); // Solve the relative path from 'from' to 'to'.
    path.dirname(p); // Return the directory name of a path. Similar to the Unix dirname command.
  26. Julien Le Coupanec revised this gist Jun 15, 2014. 1 changed file with 17 additions and 0 deletions.
    17 changes: 17 additions & 0 deletions 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -324,7 +324,24 @@ fs.createReadStream(path, [options]); // Returns a new ReadStream object.
    fs.createWriteStream(path, [options]); // Returns a new WriteStream object.


    // 10. File System.
    // Use require('path') to use this module.
    // This module contains utilities for handling and transforming file paths.
    // Almost all these methods perform only string transformations.
    // The file system is not consulted to check whether paths are valid.
    // http://nodejs.org/api/fs.html


    path.normalize(p); // Normalize a string path, taking care of '..' and '.' parts.
    path.join([path1], [path2], [...]); // Join all arguments together and normalize the resulting path.
    path.resolve([from ...], to); // Resolves 'to' to an absolute path.
    path.relative(from, to); // Solve the relative path from 'from' to 'to'.
    path.dirname(p); // Return the directory name of a path. Similar to the Unix dirname command.
    path.basename(p, [ext]); // Return the last portion of a path. Similar to the Unix basename command.
    path.extname(p); // Return the extension of the path, from the last '.' to end of string in the last portion of the path.

    path.sep; // The platform-specific file separator. '\\' or '/'.
    path.delimiter; // The platform-specific path delimiter, ; or ':'.



  27. Julien Le Coupanec revised this gist Jun 15, 2014. 1 changed file with 11 additions and 3 deletions.
    14 changes: 11 additions & 3 deletions 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -311,9 +311,17 @@ fs.watch(filename, [options], [listener]); // Watch for changes on fil
    fs.exists(path, callback); // Test whether or not the given path exists by checking with the file system. Then call the callback argument with either true or false. (should not be used)
    fs.existsSync(path); // Synchronous version of fs.exists. (should not be used)




    // fs.Stats: objects returned from fs.stat(), fs.lstat() and fs.fstat() and their synchronous counterparts are of this type.
    stats.isFile();
    stats.isDirectory()
    stats.isBlockDevice()
    stats.isCharacterDevice()
    stats.isSymbolicLink() // (only valid with fs.lstat())
    stats.isFIFO()
    stats.isSocket()

    fs.createReadStream(path, [options]); // Returns a new ReadStream object.
    fs.createWriteStream(path, [options]); // Returns a new WriteStream object.



  28. Julien Le Coupanec revised this gist Jun 15, 2014. 1 changed file with 3 additions and 2 deletions.
    5 changes: 3 additions & 2 deletions 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -307,8 +307,9 @@ fs.writeFile(filename, data, [options], callback); // Asynchronously writes da
    fs.writeFileSync(filename, data, [options]); // The synchronous version of fs.writeFile.
    fs.appendFile(filename, data, [options], callback); // Asynchronously append data to a file, creating the file if it not yet exists. data can be a string or a buffer.
    fs.appendFileSync(filename, data, [options]); // The synchronous version of fs.appendFile.


    fs.watch(filename, [options], [listener]); // Watch for changes on filename, where filename is either a file or a directory. The returned object is a fs.FSWatcher. The listener callback gets two arguments (event, filename). event is either 'rename' or 'change', and filename is the name of the file which triggered the event.
    fs.exists(path, callback); // Test whether or not the given path exists by checking with the file system. Then call the callback argument with either true or false. (should not be used)
    fs.existsSync(path); // Synchronous version of fs.exists. (should not be used)



  29. Julien Le Coupanec revised this gist Jun 15, 2014. 1 changed file with 5 additions and 2 deletions.
    7 changes: 5 additions & 2 deletions 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -303,8 +303,11 @@ fs.readSync(fd, buffer, offset, length, position); // Synchronous versio
    fs.readFile(filename, [options], callback); // Asynchronously reads the entire contents of a file.
    fs.readFileSync(filename, [options]); // Synchronous version of fs.readFile. Returns the contents of the filename. If the encoding option is specified then this function returns a string. Otherwise it returns a buffer.

    fs.writeFile(filename, data, [options], callback); // Asynchronously writes data to a file, replacing the file if it already exists. data can be a string or a buffer.
    fs.writeFileSync(filename, data, [options]); // The synchronous version of fs.writeFile.
    fs.writeFile(filename, data, [options], callback); // Asynchronously writes data to a file, replacing the file if it already exists. data can be a string or a buffer.
    fs.writeFileSync(filename, data, [options]); // The synchronous version of fs.writeFile.
    fs.appendFile(filename, data, [options], callback); // Asynchronously append data to a file, creating the file if it not yet exists. data can be a string or a buffer.
    fs.appendFileSync(filename, data, [options]); // The synchronous version of fs.appendFile.




  30. Julien Le Coupanec revised this gist Jun 15, 2014. 1 changed file with 13 additions and 0 deletions.
    13 changes: 13 additions & 0 deletions 1-nodejs-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -296,6 +296,19 @@ fs.futimesSync(fd, atime, mtime); // Synchronous version of fs.futimes()
    fs.fsync(fd, callback); // Asynchronous fsync. No arguments other than a possible exception are given to the completion callback.
    fs.fsyncSync(fd); // Synchronous fsync.

    fs.write(fd, buffer, offset, length, position, callback); // Write buffer to the file specified by fd.
    fs.writeSync(fd, buffer, offset, length, position); // Synchronous version of fs.write(). Returns the number of bytes written.
    fs.read(fd, buffer, offset, length, position, callback); // Read data from the file specified by fd.
    fs.readSync(fd, buffer, offset, length, position); // Synchronous version of fs.read. Returns the number of bytesRead.
    fs.readFile(filename, [options], callback); // Asynchronously reads the entire contents of a file.
    fs.readFileSync(filename, [options]); // Synchronous version of fs.readFile. Returns the contents of the filename. If the encoding option is specified then this function returns a string. Otherwise it returns a buffer.

    fs.writeFile(filename, data, [options], callback); // Asynchronously writes data to a file, replacing the file if it already exists. data can be a string or a buffer.
    fs.writeFileSync(filename, data, [options]); // The synchronous version of fs.writeFile.