Skip to content

Instantly share code, notes, and snippets.

@sandinmyjoints
Created July 6, 2017 13:12
Show Gist options
  • Save sandinmyjoints/88f5a833312f1b99e5999127608cdc6d to your computer and use it in GitHub Desktop.
Save sandinmyjoints/88f5a833312f1b99e5999127608cdc6d to your computer and use it in GitHub Desktop.
Get byte size of gzipped response
'use strict';
let http = require('http');
let reqOpts = {
host: 'sdlocal.com',
port: 2100,
path: '/'
}
let req = http.request(reqOpts)
let reqHeaders = {
'Connection': 'keep-alive',
'Upgrade-Insecure-Requests': '1',
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36',
'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8',
'Accept-Encoding': 'gzip, deflate',
'Accept-Language': 'en-US,en;q=0.8,es;q=0.6',
'Cookie': '__qca=P0-1395411002-1499268285443; __gads=ID=48fbb51772531aa9:T=1499268286:S=ALNI_MYHmyvrHZZiTWJXiBAwUXJEZxUlrQ; sd_wotd_overlay_seen=true; OX_plg=pm; __ybotu=j4r5ml68aww9iah8o2; __ybotv=1499279898658; GED_PLAYLIST_ACTIVITY=W3sidSI6IjdZaHMiLCJ0c2wiOjE0OTkyNzk5MzUsIm52IjoxLCJ1cHQiOjE0OTkyNzk5MzQsImx0IjoxNDk5Mjc5OTM0fV0.; opti-position=1; opti-userid=145a5c82-2f3d-44ea-aad1-c06f326e1589; logglytrackingsession=acb748e9-b50c-402d-9747-5211bbe07ca4; lang=en; _ga=GA1.2.447100366.1499268285; _gid=GA1.2.1528834408.1499268285; mp_790940e1ca2b2d7cda45d102cd8be5c6_mixpanel=%7B%22distinct_id%22%3A%20%2215d135a827a64e-01deef29aadc3a-30667808-fa000-15d135a827b575%22%2C%22%24initial_referrer%22%3A%20%22%24direct%22%2C%22%24initial_referring_domain%22%3A%20%22%24direct%22%2C%22initial_visit_date%22%3A%20%222017-07-05T15%3A24%3A41%2B00%3A00%22%7D; mp_mixpanel__c=0; test_group5=47',
'If-None-Match': 'W/"4aa1-VelbQNtNUYrkQH5RV0TMsYRuvfM"'
}
for (var key in reqHeaders) {
req.setHeader(key, reqHeaders[key])
}
req.on('response', (res) => {
let bufs = []
res.on('data', function (data) {
bufs.push(data)
})
res.on('end', function () {
let resHeadersSize = res.rawHeaders.join(' ').length
let body = Buffer.concat(bufs)
let resBodySize = body.length
console.log('total size: ', resHeadersSize + resBodySize)
})
res.resume();
}).on('error', (e) => {
console.log(`Got error: ${e.message}`);
});
req.end()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment