UNPKG

low-http-server

Version:

HTTP Server implementation on top of uWebSocket.js

41 lines (33 loc) 804 B
const { Readable } = require('stream') const { forEach } = require('./utils/object') class HttpRequest extends Readable { constructor (uRequest) { super() const q = uRequest.getQuery() this.req = uRequest this.url = uRequest.getUrl() + (q ? '?' + q : '') this.method = uRequest.getMethod().toUpperCase() this.statusCode = null this.statusMessage = null this.body = {} this.headers = {} this.socket = {} uRequest.forEach((header, value) => { this.headers[header] = value }) } getRawHeaders () { const raw = [] forEach(this.headers, (header, value) => { raw.push(header, value) }) return raw } getRaw () { return this.req } _read (size) { return this.slice(0, size) } } module.exports = HttpRequest