File tree Expand file tree Collapse file tree 3 files changed +37
-6
lines changed Expand file tree Collapse file tree 3 files changed +37
-6
lines changed Original file line number Diff line number Diff line change @@ -90,9 +90,9 @@ request.
90
90
91
91
Rewrite the prefix to the specified string. Default: ` '' ` .
92
92
93
- ### beforeHandler
93
+ ### preHandler
94
94
95
- A ` beforeHandler ` to be applied on all routes. Useful for performing actions before the proxy is executed (e.g. check for authentication).
95
+ A ` preHandler ` to be applied on all routes. Useful for performing actions before the proxy is executed (e.g. check for authentication).
96
96
97
97
### replyOptions
98
98
Original file line number Diff line number Diff line change @@ -7,7 +7,7 @@ module.exports = async function (fastify, opts) {
7
7
throw new Error ( 'upstream must be specified' )
8
8
}
9
9
10
- const beforeHandler = opts . beforeHandler
10
+ const preHandler = opts . preHandler || opts . beforeHandler
11
11
const rewritePrefix = opts . rewritePrefix || ''
12
12
13
13
const fromOpts = Object . assign ( { } , opts )
@@ -40,8 +40,8 @@ module.exports = async function (fastify, opts) {
40
40
done ( null , req )
41
41
}
42
42
43
- fastify . all ( '/' , { beforeHandler } , reply )
44
- fastify . all ( '/*' , { beforeHandler } , reply )
43
+ fastify . all ( '/' , { preHandler } , reply )
44
+ fastify . all ( '/*' , { preHandler } , reply )
45
45
46
46
function reply ( request , reply ) {
47
47
var dest = request . req . url
Original file line number Diff line number Diff line change @@ -96,7 +96,38 @@ async function run () {
96
96
t . deepEqual ( resultRoot . body , { something : 'posted' } )
97
97
} )
98
98
99
- test ( 'beforeHandler' , async ( t ) => {
99
+ test ( 'preHandler' , async ( t ) => {
100
+ const server = Fastify ( )
101
+ server . register ( proxy , {
102
+ upstream : `http://localhost:${ origin . server . address ( ) . port } ` ,
103
+ async preHandler ( request , reply ) {
104
+ throw new Unauthorized ( )
105
+ }
106
+ } )
107
+
108
+ await server . listen ( 0 )
109
+ t . tearDown ( server . close . bind ( server ) )
110
+
111
+ var errored = false
112
+ try {
113
+ await got ( `http://localhost:${ server . server . address ( ) . port } ` )
114
+ } catch ( err ) {
115
+ t . equal ( err . statusCode , 401 )
116
+ errored = true
117
+ }
118
+ t . ok ( errored )
119
+
120
+ errored = false
121
+ try {
122
+ await got ( `http://localhost:${ server . server . address ( ) . port } /a` )
123
+ } catch ( err ) {
124
+ t . equal ( err . statusCode , 401 )
125
+ errored = true
126
+ }
127
+ t . ok ( errored )
128
+ } )
129
+
130
+ test ( 'beforeHandler(deprecated)' , async ( t ) => {
100
131
const server = Fastify ( )
101
132
server . register ( proxy , {
102
133
upstream : `http://localhost:${ origin . server . address ( ) . port } ` ,
You can’t perform that action at this time.
0 commit comments