46 lines
1.3 KiB
JavaScript
46 lines
1.3 KiB
JavaScript
const test = require('../testlib');
|
|
|
|
test.run(async function () {
|
|
await test('admin', async function (assert, req) {
|
|
var res = await req({
|
|
url: '/remote/ip',
|
|
method: 'get'
|
|
});
|
|
|
|
assert.equal(res.status, 200);
|
|
assert.equal(res.data, { ip: '127.0.0.1' }, 'No proxy header should return tcp client ip.');
|
|
|
|
var res = await req({
|
|
url: '/remote/ip',
|
|
method: 'get',
|
|
headers: {
|
|
'X-Forwarded-For': '1.2.3.4, 127.0.0.1'
|
|
}
|
|
});
|
|
|
|
assert.equal(res.status, 200);
|
|
assert.equal(res.data, { ip: '1.2.3.4' }, 'X-Forwarded-For Test 1');
|
|
|
|
var res = await req({
|
|
url: '/remote/ip',
|
|
method: 'get',
|
|
headers: {
|
|
'X-Forwarded-For': '4.3.2.1, 1.2.3.4, 127.0.0.1'
|
|
}
|
|
});
|
|
|
|
assert.equal(res.status, 200);
|
|
assert.equal(res.data, { ip: '1.2.3.4' }, 'X-Forwarded-For Test 2');
|
|
|
|
var res = await req({
|
|
url: '/remote/ip',
|
|
method: 'get',
|
|
headers: {
|
|
'X-Forwarded-For': '4.3.2.1, 1.2.3.4'
|
|
}
|
|
});
|
|
|
|
assert.equal(res.status, 200);
|
|
assert.equal(res.data, { ip: '1.2.3.4' }, 'X-Forwarded-For Test 3');
|
|
});
|
|
}); |