File tree 5 files changed +181
-0
lines changed
5 files changed +181
-0
lines changed Original file line number Diff line number Diff line change
1
+ var Hapi = require ( 'hapi' ) ;
2
+
3
+ // Create a server with a host and port
4
+ var server = Hapi . createServer ( '127.0.0.1' , 8000 , { } ) ;
5
+
6
+ // Add the route
7
+ server . route ( {
8
+ method : 'GET' ,
9
+ path : '/hello' ,
10
+ config : {
11
+ handler : function ( req ) {
12
+
13
+ req . reply ( 'hello world' ) ;
14
+ }
15
+ }
16
+ } ) ;
17
+
18
+ // Start the server
19
+ server . start ( ) ;
Original file line number Diff line number Diff line change
1
+ var Hapi = require ( 'hapi' ) ,
2
+ good = require ( 'good' ) ;
3
+
4
+ // Create a server with a host and port
5
+ var server = Hapi . createServer ( '127.0.0.1' , 8000 , {
6
+ cache : 'redis'
7
+ } ) ;
8
+
9
+ // Add the route
10
+ server . route ( {
11
+ method : 'GET' ,
12
+ path : '/hello' ,
13
+ config :{
14
+ handler : function ( req ) {
15
+ req . reply ( 'hello world' ) ;
16
+ } ,
17
+ cache : {
18
+ mode : 'client+server' ,
19
+ expiresIn : 60000
20
+ }
21
+ }
22
+ } ) ;
23
+
24
+ server . pack . require ( 'good' , {
25
+ subscribers : {
26
+ console : [ 'request' , 'log' , 'ops' ]
27
+ } ,
28
+ leakDetection : true ,
29
+ extendedRequests : true
30
+ } ,
31
+ function ( err ) {
32
+ if ( err ) {
33
+ throw err ;
34
+ }
35
+ }
36
+ ) ;
37
+
38
+ // Start the server
39
+ server . start ( function ( ) {
40
+ server . log ( [ 'info' ] , 'server started...' ) ;
41
+ } ) ;
Original file line number Diff line number Diff line change
1
+ var Hapi = require ( 'hapi' ) ,
2
+ good = require ( 'good' ) ;
3
+
4
+ // Create a server with a host and port
5
+ var server = Hapi . createServer ( '127.0.0.1' , 8000 , { } ) ;
6
+
7
+ // Add the route
8
+ server . route ( {
9
+ method : 'GET' ,
10
+ path : '/hello' ,
11
+ config : {
12
+ handler : function ( req ) {
13
+
14
+ req . reply ( 'hello world' ) ;
15
+ }
16
+ }
17
+ } ) ;
18
+
19
+ server . pack . require ( 'good' , {
20
+ subscribers : {
21
+ console : [ 'request' , 'log' , 'ops' ] ,
22
+ 'logs/' : [ 'request' , 'log' , 'ops' ] ,
23
+ 'http://some.http.endpoint/log' : [ 'request' ] ,
24
+ 'udp://some.syslog.server:1234' : [ 'log' ]
25
+ } ,
26
+ leakDetection : true ,
27
+ extendedRequests : true
28
+ } ,
29
+ function ( err ) {
30
+ if ( err ) {
31
+ throw err ;
32
+ }
33
+ }
34
+ ) ;
35
+
36
+ // Start the server
37
+ server . start ( function ( ) {
38
+ server . log ( [ 'info' ] , 'server started...' ) ;
39
+ } ) ;
Original file line number Diff line number Diff line change
1
+ {
2
+ "name" : " hapi-example" ,
3
+ "version" : " 0.1.0" ,
4
+ "description" : " " ,
5
+ "main" : " basic.js" ,
6
+ "scripts" : {
7
+ "test" : " echo \" Error: no test specified\" && exit 1"
8
+ },
9
+ "author" : " " ,
10
+ "license" : " BSD" ,
11
+ "dependencies" : {
12
+ "hapi" : " ~1.14.0" ,
13
+ "good" : " ~0.12.0" ,
14
+ "redis" : " ~0.8.6" ,
15
+ "joi" : " ~1.2.2"
16
+ }
17
+ }
Original file line number Diff line number Diff line change
1
+ var Hapi = require ( 'hapi' ) ;
2
+ var Joi = require ( 'joi' ) ;
3
+
4
+ // Create a server with a host and port
5
+ var server = Hapi . createServer ( '127.0.0.1' , 8000 , { } ) ;
6
+
7
+ // Add the route
8
+ server . route ( [
9
+ {
10
+ method : 'GET' ,
11
+ path : '/hello/{name}' ,
12
+ config : {
13
+ handler : function ( req ) {
14
+ req . reply ( 'hello ' + req . params . name ) ;
15
+ } ,
16
+ validate :{
17
+ path : {
18
+ name : Joi . types . String ( ) . regex ( / O r l a n d o | R i c h a r d | P o t a t o / i)
19
+ }
20
+ }
21
+ }
22
+ } ,
23
+ {
24
+ method : 'GET' ,
25
+ path : '/people/{id}' ,
26
+ config : {
27
+ handler : function ( req ) {
28
+ req . reply ( 'hello ' + req . params . id ) ;
29
+ } ,
30
+ validate :{
31
+ path : {
32
+ id : Joi . types . Number ( ) . integer ( ) . min ( 0 )
33
+ }
34
+ }
35
+ }
36
+ } ,
37
+ {
38
+ method : 'PUT' ,
39
+ path : '/people/{id}' ,
40
+ config : {
41
+ handler : function ( req ) {
42
+ req . reply ( 'hello ' + req . payload . name ) ;
43
+ } ,
44
+ validate :{
45
+ path : {
46
+ id : Joi . types . Number ( ) . integer ( ) . min ( 0 )
47
+ } ,
48
+ payload :{
49
+ id : Joi . types . Number ( ) . integer ( ) . min ( 0 ) ,
50
+ name : Joi . types . String ( ) . regex ( / O r l a n d o | R i c h a r d | P o t a t o / i) ,
51
+ tags : Joi . types . Array ( ) . includes ( 'foo' , 'bar' ) ,
52
+ address : Joi . types . Object ( {
53
+ line1 : Joi . types . String ( ) . emptyOk ( ) ,
54
+ line2 : Joi . types . String ( ) . emptyOk ( ) ,
55
+ city : Joi . types . String ( ) . emptyOk ( ) ,
56
+ postcode : Joi . types . String ( ) . emptyOk ( )
57
+ } )
58
+ }
59
+ }
60
+ }
61
+ }
62
+ ] ) ;
63
+
64
+ // Start the server
65
+ server . start ( ) ;
You can’t perform that action at this time.
0 commit comments