diff options
| author | Jannis R <mail@jannisr.de> | 2020-05-02 15:32:36 +0200 |
|---|---|---|
| committer | Jannis R <mail@jannisr.de> | 2020-05-02 16:35:50 +0200 |
| commit | 1b5af6f4bdfca939e780ae70bd6e1819425824f7 (patch) | |
| tree | 4e3fb0c4957680348c473ff45e3478780d1ba55c /examples | |
| parent | 635b65aa8af3b35a4ea2c8a5fea805853942cbf4 (diff) | |
move code, server example :memo:
Diffstat (limited to 'examples')
| -rw-r--r-- | examples/server.js | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/examples/server.js b/examples/server.js new file mode 100644 index 0000000..bff88e3 --- /dev/null +++ b/examples/server.js @@ -0,0 +1,37 @@ +'use strict' + +const createCert = require('create-cert') +const { + createServer: createGeminiServer, + DEFAULT_PORT, +} = require('..') + +const onRequest = (req, res) => { + if (req.path === '/foo') { + res.write('foo,') + res.end('bar') + } else { + res.gone() + } +} + +const onError = (err) => { + console.error(err) + process.exit(1) +} + +createCert('example.org') +.then((keys) => { + const server = createGeminiServer({ + tlsOpt: keys, + // todo: SNICallback + }, onRequest) + server.on('error', onError) + + server.listen(DEFAULT_PORT, (err) => { + if (err) return onError(err) + const {address, port} = server.address() + console.info(`listening on ${address}:${port}`) + }) +}) +.catch(onError) |
