Skip to content

Commit 7709f45

Browse files
authored
move state creation & cookie set in generateAuthorizationUri + fix corresponding test (#212)
1 parent b97cc9d commit 7709f45

File tree

2 files changed

+12
-10
lines changed

2 files changed

+12
-10
lines changed

index.js

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -79,25 +79,27 @@ function fastifyOauth2 (fastify, options, next) {
7979
const tags = options.tags || []
8080
const schema = options.schema || { tags }
8181

82-
function generateAuthorizationUri (request, state) {
82+
function generateAuthorizationUri (request, reply) {
83+
const state = generateStateFunction(request)
84+
85+
reply.setCookie('oauth2-redirect-state', state, {
86+
httpOnly: true,
87+
sameSite: 'lax'
88+
})
89+
8390
const urlOptions = Object.assign({}, generateCallbackUriParams(callbackUriParams, request, scope, state), {
8491
redirect_uri: callbackUri,
8592
scope,
8693
state
8794
})
8895

89-
const authorizationUri = oauth2.authorizeURL(urlOptions)
90-
return authorizationUri
96+
return oauth2.authorizeURL(urlOptions)
9197
}
9298

9399
function startRedirectHandler (request, reply) {
94-
const state = generateStateFunction(request)
95-
const authorizationUri = generateAuthorizationUri(request, state)
100+
const authorizationUri = generateAuthorizationUri(request, reply)
96101

97-
reply.setCookie('oauth2-redirect-state', state, {
98-
httpOnly: true,
99-
sameSite: 'lax'
100-
}).redirect(authorizationUri)
102+
reply.redirect(authorizationUri)
101103
}
102104

103105
const cbk = function (o, code, callback) {

test/index.test.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -450,7 +450,7 @@ t.test('generateAuthorizationUri redirect with request object', t => {
450450
})
451451

452452
fastify.get('/gh', function (request, reply) {
453-
const redirectUrl = this.theName.generateAuthorizationUri(request, 'generated_code')
453+
const redirectUrl = this.theName.generateAuthorizationUri(request, reply)
454454
return reply.redirect(redirectUrl)
455455
})
456456

0 commit comments

Comments
 (0)