Files

54 lines
1.0 KiB
JavaScript

var Hapi = require('hapi');
var dotenv = require('dotenv');
var server = new Hapi.Server();
dotenv.load();
server.connection({ port: 8000 });
server.register(require('hapi-auth-jwt'), function (err) {
if (err) {
throw err;
}
server.auth.strategy('token', 'jwt', {
key: process.env.AUTH0_CLIENT_SECRET,
verifyOptions: {
algorithms: [ 'HS256' ],
audience: process.env.AUTH0_CLIENT_ID
}
});
server.route({
method: 'GET',
path: '/private',
config: { auth: 'token' },
handler: function(request, reply) {
reply({
message: 'This is a private endpoint - a token is required.',
credentials: request.auth.credentials
});
}
});
server.route({
method: 'GET',
path: '/public',
config: { auth: false },
handler: function(request, reply) {
reply({
message: 'This is a public endpoint - no token required.'
});
}
});
server.start((err) => {
if (err) {
throw err;
}
console.log('Server started at:', server.info.uri);
});
});