Skip to content

Commit

Permalink
http cleanup
Browse files Browse the repository at this point in the history
  • Loading branch information
0x8890 committed Aug 24, 2015
1 parent d299f97 commit 9f19c3d
Showing 1 changed file with 12 additions and 15 deletions.
27 changes: 12 additions & 15 deletions lib/net/http.js
Original file line number Diff line number Diff line change
Expand Up @@ -84,8 +84,7 @@ export default function http (instance, options = {}) {

if (compression) {
const encoding = negotiator.encoding(availableEncodings)
if (~availableEncodings.indexOf(encoding))
response.setHeader('Content-Encoding', encoding)
if (encoding) response.setHeader('Content-Encoding', encoding)
}

return new Promise((resolve, reject) => {
Expand Down Expand Up @@ -149,22 +148,20 @@ export default function http (instance, options = {}) {
const encoding = response.getHeader('content-encoding')

if (encoding && ~availableEncodings.indexOf(encoding))
zlib[encoding](payload, (error, result) => {
return zlib[encoding](payload, (error, result) => {
if (error) throw error
payload = contextResponse.payload = result
meta['Content-Length'] = payload.length
return resolve()
})
else {
meta['Content-Length'] = Buffer.byteLength(payload)
return resolve()
}
}
else {
response.removeHeader('Content-Encoding')
response.removeHeader('Content-Type')

meta['Content-Length'] = Buffer.byteLength(payload)
return resolve()
}

response.removeHeader('Content-Encoding')
response.removeHeader('Content-Type')
return resolve()
})
.then(() => new Promise(resolve => {
for (let field in meta)
Expand All @@ -173,13 +170,13 @@ export default function http (instance, options = {}) {
return skipResponse ? resolve(contextResponse) :
response.end(payload, () => resolve(contextResponse))
}))
.catch(error => {
.catch(error => new Promise(resolve => {
const message = error.toString()
response.statusCode = http.statusMap.get(Error)
response.setHeader('Content-Type', 'text/plain')
response.setHeader('Content-Length', message.length)
response.end(message, () => resolve(contextResponse))
})
response.setHeader('Content-Length', Buffer.byteLength(message))
response.end(message, () => resolve(error))
}))
}
}

Expand Down

0 comments on commit 9f19c3d

Please sign in to comment.