fix: handle response mode query
This commit is contained in:
@@ -183,13 +183,26 @@ app.get('/authorize', (req, res) => {
|
|||||||
const codeChallenge = req.query.code_challenge
|
const codeChallenge = req.query.code_challenge
|
||||||
const prompt = req.query.prompt
|
const prompt = req.query.prompt
|
||||||
const responseMode = req.query.response_mode
|
const responseMode = req.query.response_mode
|
||||||
|
if (responseMode === 'query') {
|
||||||
|
const code = req.cookies['auth0']
|
||||||
|
const session = sessions[code]
|
||||||
|
if (session) {
|
||||||
|
session.nonce = nonce
|
||||||
|
session.state = state
|
||||||
|
session.codeChallenge = codeChallenge
|
||||||
|
sessions[codeChallenge] = session
|
||||||
|
res.redirect(`${redirect}?code=${codeChallenge}&state=${state}`)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
if (prompt === 'none' && responseMode === 'web_message') {
|
if (prompt === 'none' && responseMode === 'web_message') {
|
||||||
const code = req.cookies['auth0']
|
const code = req.cookies['auth0']
|
||||||
const session = sessions[code]
|
const session = sessions[code]
|
||||||
session.nonce = nonce
|
if (session) {
|
||||||
session.state = state
|
session.nonce = nonce
|
||||||
session.codeChallenge = codeChallenge
|
session.state = state
|
||||||
res.send(`
|
session.codeChallenge = codeChallenge
|
||||||
|
res.send(`
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
<body>
|
<body>
|
||||||
@@ -207,13 +220,16 @@ app.get('/authorize', (req, res) => {
|
|||||||
</script>
|
</script>
|
||||||
</body>
|
</body>
|
||||||
</html>`)
|
</html>`)
|
||||||
} else {
|
return
|
||||||
res.cookie('auth0', codeChallenge, {
|
}
|
||||||
sameSite: 'None',
|
}
|
||||||
secure: true,
|
|
||||||
httpOnly: true
|
res.cookie('auth0', codeChallenge, {
|
||||||
})
|
sameSite: 'None',
|
||||||
res.send(`
|
secure: true,
|
||||||
|
httpOnly: true
|
||||||
|
})
|
||||||
|
res.send(`
|
||||||
<html lang='en'>
|
<html lang='en'>
|
||||||
<head>
|
<head>
|
||||||
<meta charset='utf-8'>
|
<meta charset='utf-8'>
|
||||||
@@ -254,7 +270,6 @@ app.get('/authorize', (req, res) => {
|
|||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
`)
|
`)
|
||||||
}
|
|
||||||
})
|
})
|
||||||
|
|
||||||
app.get('/userinfo', (req, res) => {
|
app.get('/userinfo', (req, res) => {
|
||||||
|
|||||||
Reference in New Issue
Block a user