express-router-ping

1.0.0 • Public • Published

Router

NPM version Build ping Coverage ping Dependencies

Express router which provides a ping endpoint.

Installation

$ npm install express-router-ping

Usage

var router = require( 'express-router-ping' );

router

A mountable Express route handler.

var express = require( 'express' );
 
// Create a new application:
var app = express();
 
// Mount the route handler on the application:
app.use( '/', router );

Routes

GET /ping

URI endpoint for pinging the server application.

Response: 200 (text/plain)

The response body will be

pong
Examples

From the command-line,

$ curl 'http://127.0.0.1:<port>/ping'

From another Node application,

var request = require( 'request' );
 
request({
    'uri': 'http://127.0.0.1:<port>/ping',
    'method': 'GET'
}, onResponse );
 
function onResponse( error, response, body ) {
    if ( error ) {
        console.error( error );
        return;
    }
    console.log( body );
}

A successful request will receive the following response body:

pong

Examples

var request = require( 'request' ),
    express = require( 'express' ),
    router = require( 'express-router-ping' );
 
 
// APP //
 
var app = express();
 
// Mount the router on the application:
app.use( '/', router );
 
// Create an HTTP server:
app.listen( 7331, onListen );
 
function onListen() {
    console.log( 'Server is listening for requests on port: 7331.' );
    run();
}
 
 
// RUN //
 
var count = 0;
 
function run() {
    if ( ++count > 10 ) {
        process.exit( 0 );
    }
    setTimeout( ping, 1000 );
}
 
function ping() {
    request({
        'method': 'GET',
        'uri': 'http://127.0.0.1:7331/ping'
    }, onResponse );
}
 
function onResponse( error, response, body ) {
    if ( error ) {
        throw error;
    }
    console.log( 'Status: %s.', response.statusCode );
    console.log( 'Body: %s.', body );
    run();
}

To run the example code from the top-level application directory,

$ node ./examples/index.js

Tests

Unit

Unit tests use the Mocha test framework with Chai assertions. To run the tests, execute the following command in the top-level application directory:

$ make test

All new feature development should have corresponding unit tests to validate correct functionality.

Test Coverage

This repository uses Istanbul as its code coverage tool. To generate a test coverage report, execute the following command in the top-level application directory:

$ make test-cov

Istanbul creates a ./reports/coverage directory. To access an HTML version of the report,

$ make view-cov

License

MIT license.

Copyright

Copyright © 2015. Athan Reines.

Package Sidebar

Install

npm i express-router-ping

Weekly Downloads

1

Version

1.0.0

License

MIT

Last publish

Collaborators

  • kgryte