diff --git a/src/browser.js b/src/browser.js index 923b5e7..197f254 100644 --- a/src/browser.js +++ b/src/browser.js @@ -22,6 +22,11 @@ class StatusError extends Error { return buffer } Object.defineProperty(this, 'responseBody', { get }) + // match Node.js headers object + this.headers = {} + for (const [key, value] of res.headers.entries()) { + this.headers[key.toLowerCase()] = value + } } } diff --git a/src/nodejs.js b/src/nodejs.js index 6dcf18f..10b5408 100644 --- a/src/nodejs.js +++ b/src/nodejs.js @@ -51,6 +51,7 @@ class StatusError extends Error { this.json = res.json this.text = res.text this.arrayBuffer = res.arrayBuffer + this.headers = res.headers let buffer const get = () => { if (!buffer) buffer = this.arrayBuffer() diff --git a/test/test-basics.js b/test/test-basics.js index edf8f8f..1b3dae2 100644 --- a/test/test-basics.js +++ b/test/test-basics.js @@ -115,6 +115,8 @@ test('status 201', async () => { throw new Error('Call should have thrown.') } catch (e) { same(e.message, 'Incorrect statusCode: 200') + // basic header test + same(e.headers['content-length'], '2') } })