1.0.1 • Published 7 years ago

httpapijs v1.0.1

Weekly downloads
1
License
MIT
Repository
github
Last release
7 years ago

httpapijs

Simple api for http server.

Content

GitHub.

Progect on GitHub.

Install.

npm install httpapijs --save

or

npm install httpapijs --save-dev
  • Usage. Import ServerAPI form package:
  import ServerAPI from 'httpapijs';

Also you can import utilities getContentType and getStatusText:

  import { getContentType, getStatusText } from 'httpapijs';

or

  import ServerAPI, { getContentType, getStatusText } from 'httpapijs';

ServerAPI

  import ServerAPI from 'httpapijs';

ServerAPI - class of main server api. It may be costructed with two arguments:

ServerAPI.on - method to set handlers, adds start handler and handlers for request's types. It calls with two parameters:

  • {string} type - type of event. Available start event emits at server's starting and lowercased names of request's events.
  • {function} handler - event handler. All events but start get request and response objects as arguments, start event does not get any arguments.

You can set only one handler for each event. If you call on method with same event's name, only last handler will be set. But you can update it.

ServerAPI.up - method to fire server.

getContentType

  import { getContentType} from 'httpapijs';

getContentType returns default Content-Type header by mime. This method has only one argument:

getStatusText

Also you can import utilities getContentType and getStatusText:

  import { getContentType } from 'httpapijs';

getStatusText returns humanreadable status by it's code. It has argument:

  • {number | string} code - statuses code.

Example

  import ServerAPI, { getContentType, getStatusText } from './index';

const server = new ServerAPI(8084, __dirname);

server.on('start', () => console.log('HELLO!'));

server.on('get', (request, response) => {
  response.statusCode = 200;
  response.statusMessage = getStatusText(200);
  response.setHeader('Content-Type', getContentType('txt'));
  response.setHeader('Content-length', 'Hello!'.length);
  response.end('Hello!');
});

server.up();

License

MIT Copyright (c) 2017 Kuznetsov Leonid.

1.0.1

7 years ago

1.0.0

7 years ago

0.0.0

7 years ago