Nonsense Parser Microframework

    irrlicht

    0.16.0 • Public • Published

    Irrlicht

    npm npm downloads build status

    Irrlicht, the German name for will-o'-the-wisp, the ghostly light sometimes seen at night over bogs and swamps.

    Install via npm

    $ npm install irrlicht

    Known Issues

    Travis CI
    Irrlicht might not run on Travis CI out of the box. If you run into problems, add the following lines to your .travis.yml to work around this issue:

    addons:
      apt:
        sources:
        - ubuntu-toolchain-r-test
        packages:
        - g++-4.8
    env:
      CXX=g++-4.8

    Command Line

    $ npm install --global irrlicht
    Usage: irrlicht [command] [options]
    
    Commands:
      record    Record HTTP responses (implies MITM, no-cache)
      replay    Replay recorded HTTP responses (implies MITM)
    
    Options:
      --help, -h         Show help
      --version, -v      Show version number
      --port, -p         Port to run the proxy on                    [default: 8989]
      --host, -H         Hostname to bind to
      --enable-cache     Disable forced cache revalidation          [default: false]
      --disable-network  Enable proxying to remotes during replay    [default: true]
      --ignore-local     Record & replay on local interfaces         [default: true]
      --fixtures, -f     Fixture data path
      --mitm             Enable MITM on SSL/TLS                     [default: false]
      --ca               SSL CA Certificate path
      --cert             SSL Certificate path
      --key              SSL Certificate Key path
    

    Usage

    var Irrlicht = require( 'irrlicht' )
    var proxy = new Irrlicht( options )
    // Start listening on a given port (and optionally, host)
    proxy.listen( port[, host], function() {
      console.log( 'Proxying HTTP via', this.http.address() )
      console.log( 'Proxying HTTPS via', this.https.address() )
    })

    API

    Function new Irrlicht( options )

    • Object options:
      • Boolean record: Record HTTP responses
      • Boolean replay: Replay saved HTTP responses
      • Boolean enableNetwork: Enable proxying to remotes during HTTP replay
      • Boolean ignoreLocal: Record & replay responses to local network interfaces
      • String path: Fixture data path
      • Boolean noCache: Force cache revalidation
      • Number maxSockets: Maximum number of sockets for each server
      • Object ssl: For more detail, see iojs.org/api/tls
        • Buffer|String key: The private key of the server in PEM format
        • Array|Buffer|String cert: The certificate key of the server in PEM format
        • Array ca: Trusted certificates in PEM format
        • Array|String crl: PEM encoded CRs (Certificate Revocation List)
        • String ciphers: The ciphers to use or exclude, seperated by :

    Properties

    • String socket: Filename of HTTPS socket
    • Agent httpAgent: HTTP socket pooling agent
    • Agent httpsAgent: HTTPS socket pooling agent
    • Server http: HTTP server
    • Server https: HTTPS server
    • Boolean record: Record HTTP responses
    • Boolean replay: Replay saved HTTP responses
    • String path: Fixture data path
    • Boolean enableNetwork: Enable proxying to remotes during HTTP replay
    • Boolean ignoreLocal: Record & replay responses to local network interfaces
    • Boolean noCache: Force cache revalidation
    • Boolean mitm: MITM SSL/TLS connections

    Methods

    getRequestOptions( req )
    handleConnect( req, socket, head )
    handleRequest( req, res )
    proxyRequest( req, res[, options] )
    recordRequest( req, res[, options] )
    replayRequest( req, res[, options] )
    listen( port[, host][, callback] )
    close( [callback] )

    Events

    • error ( error )
    • request ( request, response )
    • response ( request, remoteResponse )
    • listening
    • close ( error )

    Install

    npm i irrlicht

    DownloadsWeekly Downloads

    5

    Version

    0.16.0

    License

    MIT

    Unpacked Size

    54.5 kB

    Total Files

    23

    Last publish

    Collaborators

    • jhermsmeier