-
Notifications
You must be signed in to change notification settings - Fork 211
/
Copy pathfacebook.js
executable file
·53 lines (40 loc) · 1.43 KB
/
facebook.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
'use strict';
const Bell = require('..');
const Hapi = require('@hapi/hapi');
const internals = {};
internals.start = async function () {
const server = Hapi.server({ host: 'localhost', port: 8000 });
await server.register(Bell);
// You'll need to go to https://developers.facebook.com/ and set up a
// Website application to get started
// Once you create your app, fill out Settings and set the App Domains
// Under Settings >> Advanced, set the Valid OAuth redirect URIs to include http://<yourdomain.com>/bell/door
// and enable Client OAuth Login
server.auth.strategy('facebook', 'bell', {
provider: 'facebook',
password: 'cookie_encryption_password_secure',
isSecure: false,
clientId: '',
clientSecret: '',
location: server.info.uri
});
server.route({
method: '*',
path: '/bell/door',
options: {
auth: {
strategy: 'facebook',
mode: 'try'
},
handler: function (request, h) {
if (!request.auth.isAuthenticated) {
return 'Authentication failed due to: ' + request.auth.error.message;
}
return '<pre>' + JSON.stringify(request.auth.credentials, null, 4) + '</pre>';
}
}
});
await server.start();
console.log('Server started at:', server.info.uri);
};
internals.start();