/** * Listener for 'request' event on server * @private * @see https://nodejs.org/docs/latest/api/http.html#http_http_createserver_requestlistener * @see https://nodejs.org/docs/latest/api/https.html#https_https_createserver_options_requestlistener */ _requestListener(req, res) { debug('WebHook request URL: %s', req.url); debug('WebHook request headers: %j', req.headers); if (req.url.indexOf(this.bot.token) !== -1) { if (req.method !== 'POST') { debug('WebHook request isn\'t a POST'); res.statusCode = 418; // I'm a teabot! res.end(); } else { req .pipe(bl(this._parseBody)) .on('finish', () => res.end('OK')); } } else if (this._healthRegex.test(req.url)) { debug('WebHook health check passed'); res.statusCode = 200; res.end('OK'); } else { debug('WebHook request unauthorized'); res.statusCode = 401; res.end(); } }
http.get(process.argv[2], function (res) { return res.pipe(bl(function (err, data) { if (err) { return console.error(err); } data = data.toString(); console.log(data.length); return console.log(data); })); });
/** * API expecting a stream as parameter and returning the same stream with a prefix. * * @async * @param {Readable} stream - incoming stream * @returns {Readable} incoming stream prefixed 'here is a prefix -- ' */ async streamHandling (stream) { assert(stream instanceof Readable) const prefix = new BufferList() prefix.append('here is a prefix -- ', 'utf8') return multistream([prefix, stream]) }
function addRoute (domain, creds, description, expression, actions, callback) { const params = { description, expression, action: actions } const data = qs.stringify(params) const options = { auth: `api:${creds['api-key']}`, headers: { 'content-type': 'application/x-www-form-urlencoded', 'content-length': Buffer.byteLength(data) } } const req = hyperquest.post(url, options) req.pipe(bl(callback)) req.end(data) }
https.request(requestOptions, function (res) { res.setEncoding('utf8') res.pipe(bl(function (err, result) { if (err) { debug.error('_send', err) return callback(err) } callback(null, result) })) })
it('should send and receive streams', async () => { const {response, result} = await new Promise((resolve, reject) => { let response const output = new BufferList() const input = new BufferList() input.pipe( req.post(`${server.info.uri}/api/sample/streamHandling`) .on('response', r => { response = r }) .on('end', () => { resolve({response, result: output.toString()}) }) ) .pipe(output) .on('error', reject) input.append('here is the message body', 'utf8') }) assert(result === 'here is a prefix -- here is the message body') assert(response.headers['x-service-crc'] === checksum) assert(response.headers['transfer-encoding'] === 'chunked') assert(!response.headers['content-type']) })
urls.forEach(function (element, index) { http.get(element, function (response) { return response.pipe( BufferList(function (err, data) { if (err) return err; urlData[element] = data.toString(); urlNumber--; if (urlNumber==0) urls.forEach(function(element, index) { console.log(urlData[element]); }); }) ); }); })
res.pipe(bl(function (err, resBuffer) { var response
return hasError('X-Gitlab-Event is not acceptable') req.pipe(bl(function(err, data) { if (err) return hasError(err.message)
var file = fs.createReadStream(inputLoc, encoding) file.pipe(bl(function (err, data) { if (err) throw err
let data = new BufferList() child.stdout.on('data', d => { if (data.length > 0 && d.includes('#')) { if (fileList.length) { child.send(fileList.pop()) disconnectChilds() s.push(data.toString()) data = new BufferList() data.append(d) }) s.push(data.toString()) codes = codes || code if (--pending === 0) s.push(null)
return hasError('X-Github-Event is not acceptable') req.pipe(bl(function(err, data) { if (err) return hasError(err.message)