mirror-server

0.0.7 • Public • Published

NPM version Dependency Status Build Status

Donate

Mirror server

Node.js server which sends back everything you send to it.

Installation

$ npm install -g mirror-server

Usage

When your server is running you can send any request to it and it will return you the same data you sent.

There are also few options which you can use to modify response from mirror-server:

  • statusCode: change status code (default is 200)
  • contentType: change content type (default is application/json)

Normally you're sending GET or POST data (object or list of parameters), but you can send also custom plain text data with response parameter.

GET

var http = require('http');
 
var req = http.request({
    host: 'localhost',
    port: 3000,
    method: 'GET',
    path: '/?name=David&number=5&statusCode=304&contentType=' + encodeURIComponent('text/plain')
}, function(res) {
    var data = '';
    res.setEncoding('utf8');
    res.on('data', function(chunk) {
        data += chunk;
    });
    res.on('end', function() {
        data = JSON.parse(data);
        console.log(data.name); // output: David
        console.log(data.number); // output: 5
    });
});
 
req.end();

POST

var http = require('http');
var querystring = require('querystring');
 
var data = querystring.stringify({
    name: 'David',
    number: 5,
    statusCode: 304,
    contentType: 'text/plain'
});
 
var req = http.request({
    host: 'localhost',
    port: 3000,
    method: 'GET',
    path: '/'
    headers: {
        'Content-Type': 'application/x-www-form-urlencoded',
        'Content-Length': data.length
    }
}, function(res) {
    var data = '';
    res.setEncoding('utf8');
    res.on('data', function(chunk) {
        data += chunk;
    });
    res.on('end', function() {
        data = JSON.parse(data);
        console.log(data.name); // output: David
        console.log(data.number); // output: 5
    });
});
 
req.write(data);
req.end();

Sending files

Information about sent files is stored in response HTTP header X-Mirror-Files.

console.log(JSON.parse(response.headers['x-mirror-files']));
 
[
    {
        name: 'name of POST field',
        filename: 'actual filename'
    }
]

Running server

CLI

$ mirror-server --port 3000 

node.js

var Server = require('mirror-server');
var server = new Server(3000); // port
 
server.connect(function() {
    console.log('success');
});
 
setTimeout(function() { // wait a while before disconnecting from server
    server.disconnect();
}, 1000);

Readme

Keywords

none

Package Sidebar

Install

npm i mirror-server

Weekly Downloads

3

Version

0.0.7

License

MIT

Last publish

Collaborators

  • sakren