mirror of
https://github.com/nodejs/node.git
synced 2025-08-15 21:58:48 +02:00
test: check that --insecure-http-parser works
Test that using --insecure-http-parser will disable validation of invalid characters in HTTP headers. See: - https://github.com/nodejs/node/pull/30567 PR-URL: https://github.com/nodejs/node/pull/31253 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
This commit is contained in:
parent
9d5d4f84e3
commit
e4bff131ca
1 changed files with 35 additions and 0 deletions
35
test/parallel/test-http-insecure-parser.js
Normal file
35
test/parallel/test-http-insecure-parser.js
Normal file
|
@ -0,0 +1,35 @@
|
|||
// Flags: --insecure-http-parser
|
||||
|
||||
'use strict';
|
||||
const common = require('../common');
|
||||
const assert = require('assert');
|
||||
const http = require('http');
|
||||
const net = require('net');
|
||||
|
||||
const server = http.createServer(function(req, res) {
|
||||
assert.strictEqual(req.headers['content-type'], 'text/te\bt');
|
||||
req.pipe(res);
|
||||
});
|
||||
|
||||
server.listen(0, common.mustCall(function() {
|
||||
const bufs = [];
|
||||
const client = net.connect(
|
||||
this.address().port,
|
||||
function() {
|
||||
client.write(
|
||||
'GET / HTTP/1.1\r\n' +
|
||||
'Content-Type: text/te\x08t\r\n' +
|
||||
'Connection: close\r\n\r\n');
|
||||
}
|
||||
);
|
||||
client.on('data', function(chunk) {
|
||||
bufs.push(chunk);
|
||||
});
|
||||
client.on('end', common.mustCall(function() {
|
||||
const head = Buffer.concat(bufs)
|
||||
.toString('latin1')
|
||||
.split('\r\n')[0];
|
||||
assert.strictEqual(head, 'HTTP/1.1 200 OK');
|
||||
server.close();
|
||||
}));
|
||||
}));
|
Loading…
Add table
Add a link
Reference in a new issue