2020-01-02 15:13:47 -05:00
|
|
|
// Copyright 2018-2020 the Deno authors. All rights reserved. MIT license.
|
2019-02-26 17:36:05 -05:00
|
|
|
// Note: this is a keep-alive server.
|
|
|
|
const { Server } = require("net");
|
|
|
|
const port = process.argv[2] || "4544";
|
|
|
|
console.log("port", port);
|
|
|
|
|
|
|
|
const response = Buffer.from(
|
|
|
|
"HTTP/1.1 200 OK\r\nContent-Length: 12\r\n\r\nHello World\n"
|
|
|
|
);
|
|
|
|
|
2020-03-20 09:38:34 -04:00
|
|
|
function write(socket, buffer) {
|
2019-09-16 17:25:32 -04:00
|
|
|
const p = new Promise((resolve, _) => {
|
2019-02-26 17:36:05 -05:00
|
|
|
socket.write(buffer, resolve);
|
|
|
|
});
|
2020-03-20 09:38:34 -04:00
|
|
|
return Promise.resolve(p);
|
2019-02-26 17:36:05 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
Server(async socket => {
|
|
|
|
socket.on("error", _ => {
|
|
|
|
socket.destroy();
|
|
|
|
});
|
2019-09-16 17:25:32 -04:00
|
|
|
for await (const _ of socket) {
|
2020-03-20 09:38:34 -04:00
|
|
|
await write(socket, response);
|
2019-02-26 17:36:05 -05:00
|
|
|
}
|
|
|
|
}).listen(port);
|