| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
1 parent 69f8738 commit 0aea258
1 file changed
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -7,29 +7,36 @@ const { get, createServer } = require('http'); | |||
| 7 | 7 | // res.writable should not be set to false after it has finished sending | |
| 8 | 8 | // Ref: https://github.com/nodejs/node/issues/15029 | |
| 9 | 9 | ||
| 10 | + let internal; | ||
| 10 | 11 | let external; | |
| 11 | 12 | ||
| 12 | - // Http server | ||
| 13 | - const internal = createServer((req, res) => { | ||
| 14 | - res.writeHead(200); | ||
| 15 | - setImmediate(common.mustCall(() => { | ||
| 16 | - external.abort(); | ||
| 17 | - res.end('Hello World\n'); | ||
| 18 | - })); | ||
| 19 | - }).listen(0); | ||
| 20 | - | ||
| 21 | 13 | // Proxy server | |
| 22 | 14 | const server = createServer(common.mustCall((req, res) => { | |
| 23 | 15 | get(`http://127.0.0.1:${internal.address().port}`, common.mustCall((inner) => { | |
| 24 | - res.on('close', common.mustCall(() => { | ||
| 16 | + const listener = common.mustCall(() => { | ||
| 25 | 17 | assert.strictEqual(res.writable, true); | |
| 26 | - })); | ||
| 18 | + }); | ||
| 19 | + | ||
| 20 | + // on CentOS 5, 'finish' is emitted | ||
| 21 | + res.on('finish', listener); | ||
| 22 | + // everywhere else, 'close' is emitted | ||
| 23 | + res.on('close', listener); | ||
| 24 | + | ||
| 27 | 25 | inner.pipe(res); | |
| 28 | 26 | })); | |
| 29 | 27 | })).listen(0, () => { | |
| 30 | - external = get(`http://127.0.0.1:${server.address().port}`); | ||
| 31 | - external.on('error', common.mustCall((err) => { | ||
| 32 | - server.close(); | ||
| 33 | - internal.close(); | ||
| 34 | - })); | ||
| 28 | + // Http server | ||
| 29 | + internal = createServer((req, res) => { | ||
| 30 | + res.writeHead(200); | ||
| 31 | + setImmediate(common.mustCall(() => { | ||
| 32 | + external.abort(); | ||
| 33 | + res.end('Hello World\n'); | ||
| 34 | + })); | ||
| 35 | + }).listen(0, () => { | ||
| 36 | + external = get(`http://127.0.0.1:${server.address().port}`); | ||
| 37 | + external.on('error', common.mustCall((err) => { | ||
| 38 | + server.close(); | ||
| 39 | + internal.close(); | ||
| 40 | + })); | ||
| 41 | + }); | ||
| 35 | 42 | }); | |
| Back | FazBrowse Home | New Git URL |
0 commit comments