UNPKG

light-ning

Version:

(ALPHA) framework without dependecies...

31 lines (19 loc) 812 B
import httpCodes from './httpCodes'; export default class Response { res; constructor(response) { this.res = response; return (obj) => { let {code, error, data} = obj, {res} = this; if (code) res.statusCode = code; res.statusMessage = httpCodes[`http_${res.statusCode}`] || res.statusMessage; if (error && code) return res.end(JSON.stringify({ error: error, code: res.statusCode })); else if (error && !code) { throw new Error('response: "error" must sending with "code"'); } if (res.statusCode >= 400 && res.statusCode <= 511) return res.end({ error: res.statusMessage, code: res.statusCode }); if (data) return res.end(JSON.stringify({ data: data, code: res.statusCode, message: res.statusMessage })); res.end(); } } }