Skip to content

Instantly share code, notes, and snippets.

@mtharrison
Created April 5, 2016 16:49
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mtharrison/2889ba6d63815733dae8602f0728bb76 to your computer and use it in GitHub Desktop.
Save mtharrison/2889ba6d63815733dae8602f0728bb76 to your computer and use it in GitHub Desktop.
'use strict';
const Hapi = require('hapi');
const server = new Hapi.Server();
server.connection({ port: 4000 });
server.auth.scheme('payload', function (server, options) {
return {
authenticate: function (request, reply) {
return reply.continue({ credentials: {} });
},
payload: function (request, reply) {
let i = 0;
const interval = setInterval(() => {
console.log(++i);
}, 1000);
setTimeout(() => {
clearInterval(interval);
reply.continue();
}, 5000);
},
options: {
payload: true
}
};
});
server.auth.strategy('payload', 'payload');
server.route({
config: {
auth: 'payload'
},
method: 'POST',
path: '/',
handler: function (request, reply) {
reply('ok');
}
});
server.start((err) => {
if (err) {
throw err;
}
console.log('Server started!');
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment