net: Don't ignore the referer header in net.request (#23386)

This commit is contained in:
LuoJinghua 2020-05-21 01:28:38 +08:00 committed by GitHub
parent 0a481242f0
commit 9d851b8791
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 35 additions and 0 deletions

View file

@ -1253,6 +1253,38 @@ describe('net module', () => {
setTimeout(resolve, 50);
});
});
it('should remove the referer header when no referrer url specified', async () => {
const serverUrl = await respondOnce.toSingleURL((request, response) => {
expect(request.headers.referer).to.equal(undefined);
response.statusCode = 200;
response.statusMessage = 'OK';
response.end();
});
const urlRequest = net.request(serverUrl);
urlRequest.end();
const response = await getResponse(urlRequest);
expect(response.statusCode).to.equal(200);
await collectStreamBody(response);
});
it('should set the referer header when a referrer url specified', async () => {
const referrerURL = 'https://www.electronjs.org/';
const serverUrl = await respondOnce.toSingleURL((request, response) => {
expect(request.headers.referer).to.equal(referrerURL);
response.statusCode = 200;
response.statusMessage = 'OK';
response.end();
});
const urlRequest = net.request(serverUrl);
urlRequest.setHeader('referer', referrerURL);
urlRequest.end();
const response = await getResponse(urlRequest);
expect(response.statusCode).to.equal(200);
await collectStreamBody(response);
});
});
describe('IncomingMessage API', () => {