mirror of https://github.com/lukechilds/node.git
Browse Source
- Concatenate 'accept', 'accept-charset', 'accept-encoding', 'accept-language', 'connection', 'cookie', and 'x-*' headers. - For all others, drop duplicates.v0.7.4-release
Peter Griess
15 years ago
committed by
Ryan Dahl
2 changed files with 63 additions and 5 deletions
@ -0,0 +1,36 @@ |
|||||
|
// Verify that the HTTP server implementation handles multiple instances
|
||||
|
// of the same header as per RFC2616: joining the handful of fields by ', '
|
||||
|
// that support it, and dropping duplicates for other fields.
|
||||
|
|
||||
|
require('../common'); |
||||
|
var http = require('http'); |
||||
|
|
||||
|
var srv = http.createServer(function(req, res) { |
||||
|
assert.equal(req.headers.accept, 'abc, def, ghijklmnopqrst'); |
||||
|
assert.equal(req.headers.host, 'foo'); |
||||
|
assert.equal(req.headers['x-foo'], 'bingo'); |
||||
|
assert.equal(req.headers['x-bar'], 'banjo, bango'); |
||||
|
|
||||
|
res.writeHead(200, {'Content-Type' : 'text/plain'}); |
||||
|
res.end('EOF'); |
||||
|
|
||||
|
srv.close(); |
||||
|
}); |
||||
|
|
||||
|
srv.listen(PORT, function () { |
||||
|
var hc = http.createClient(PORT, 'localhost'); |
||||
|
var hr = hc.request('/', |
||||
|
[ |
||||
|
['accept', 'abc'], |
||||
|
['accept', 'def'], |
||||
|
['Accept', 'ghijklmnopqrst'], |
||||
|
['host', 'foo'], |
||||
|
['Host', 'bar'], |
||||
|
['hOst', 'baz'], |
||||
|
['x-foo', 'bingo'], |
||||
|
['x-bar', 'banjo'], |
||||
|
['x-bar', 'bango'] |
||||
|
] |
||||
|
); |
||||
|
hr.end(); |
||||
|
}); |
Loading…
Reference in new issue