diff --git a/index.js b/index.js index b2b6bdd..f827135 100644 --- a/index.js +++ b/index.js @@ -65,6 +65,7 @@ function parse (header) { for (var i = header.length - 1; i >= 0; i--) { switch (header.charCodeAt(i)) { case 0x20: /* */ + case 0x09: /* \t */ if (start === end) { start = end = i } diff --git a/test/test.js b/test/test.js index 08e4964..7ac6bb8 100644 --- a/test/test.js +++ b/test/test.js @@ -37,6 +37,13 @@ describe('forwarded(req)', function () { .expect(200, ['127.0.0.1', '10.0.0.1', '10.0.0.2'], done) }) + it('should trim HTAB OWS', function (done) { + request(createServer()) + .get('/') + .set('X-Forwarded-For', '\t10.0.0.2\t,\t10.0.0.1\t') + .expect(200, ['127.0.0.1', '10.0.0.1', '10.0.0.2'], done) + }) + describe('socket address', function () { it('should begin with socket address', function () { var req = createReq('socket', '127.0.0.1')