| import express from 'express' |
| import morgan from 'morgan' |
|
|
| const app = express() |
|
|
| app.use(morgan('combined')) |
| app.use(express.raw({ type: '*/*' })) |
|
|
| app.all(/.*/, (req, res) => { |
| let header = `${req.method} ${req.originalUrl} HTTP/${req.httpVersion}\r\n` |
| for (let i = 0; i < req.rawHeaders.length; i += 2) { |
| header += `${req.rawHeaders[i]}: ${req.rawHeaders[i + 1]}\r\n` |
| } |
| header += '\r\n' |
| res.contentType('text').send(Buffer.concat([Buffer.from(header), req.body ?? Buffer.alloc(0)])) |
| }) |
|
|
| app.listen(3000).addListener('listening', () => { |
| console.log('Listening on http://localhost:3000') |
| }) |