harmon
DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/harmon package

1.4.4 • Public • Published

harmon

A middleware component for node-http-proxy using trumpet to parse and transform the response from the proxied server.

build status

npmico

harmon

install

$ npm install harmon

examples

Overview


In this example the HTML below is returned from the remote server and parsed:

<html>
    <head></head>
    <body>
        <div class="a">Nodejitsu Http Proxy</div>
        <div class="b">&amp; Frames</div>
    </body>
</html>

The following line is removed:

<div class="b">&amp; Frames</div> 

And is replaced with:

<div>+ Trumpet</div>

Run It!


from your project root:

$ cd node_modules/harmon/examples
$ node simple.js

Browse to localhost:8000 and you should see:

simple output

Code

 
var http = require('http'),
    connect = require('connect'),
    httpProxy = require('http-proxy');
 
 
    var selects = [];
    var simpleselect = {};
 
        simpleselect.query = '.b';
        simpleselect.func = function (node) {
           node.createWriteStream().end('<div>+ Trumpet</div>');
        }
 
        selects.push(simpleselect);
 
        //
        // Basic Connect App
        //
        var app = connect();
 
        var proxy = httpProxy.createProxyServer({
              target: 'http://localhost:9000'
        })
 
        //Additional true parameter can be used to ignore js and css files. 
        //app.use(require('../')([], selects, true));
 
        app.use(require('../')([], selects));
 
        app.use(function (req, res) {
                   proxy.web(req, res);
                });
 
        http.createServer(app).listen(8000);
 
        http.createServer(function (req, res) {
             res.writeHead(200, { 'Content-Type': 'text/html' });
               res.write('<html><head></head><body><div class="a">Nodejitsu Http Proxy</div><div class="b">&amp; Frames</div></body></html>');
                 res.end();
        }).listen(9000);

or See how images could be rotated.

$ cd node_modules/harmon/examples
$ node rotate.js

See trumpet for the types of queries and functions you can use.

Contributors

fabiosantoscode

no9

smazurov

sergiator

Readme

Keywords

none

Package Sidebar

Install

npm i harmon

Weekly Downloads

1,722

Version

1.4.4

License

MIT/X11

Unpacked Size

25.4 kB

Total Files

11

Last publish

Collaborators

  • arcanoxdragon
  • fabiosantoscode
  • no9