Я недавно обновил свой проект для использования hapi 19.xx, а также обновил проект для использования @ hapi / cook ie, в отличие от устаревшего hap-auth-cook ie, однако после успешной аутентификации мое приложение постоянно пытается пройти повторную аутентификацию даже после установки сеанса cook ie с помощью request.cookieAuth.set({ id : id})
Когда приложение перенаправляется на «страницу с ограничениями» с использованием свойства redirectTo:
объекта .auth.strategy('admin', 'cookie', {})
.
Я заметил, что состояние во входящем запросе {}
пусто, когда оно не должно быть
узел -v // 12.16.2
Google Chrome Версия 80.0.3987.163 (Официальная сборка) (64-разрядная версия)
package.json {
"dependencies": {
"@hapi/catbox-redis": "5.0.5",
"@hapi/cookie": "11.0.1",
"@hapi/h2o2": "9.0.1",
"@hapi/hapi": "19.1.1",
"@hapi/inert": "6.0.1",
"@hapi/joi": "17.1.1",
"@hapi/scooter": "6.0.0",
"@hapi/wreck": "17.0.0",
}
server.auth.strategy('admin', 'cookie', {
cookie: {
name: Server.cookieName,
password: auth_cookie_password,
isSecure: false,
ttl: Server.cacheCookieTtlMs
},
appendNext: true,
redirectTo: outboundUrl,
validateFunc: async (request: any, session: any) => {
// blah blah
}
{
method: ['GET', 'POST'],
path: '/login',
options: {
auth: false,
security: true
},
handler: async (request: any, h) => {
try {
const tokenSet = await authCallback();
const session = {
id: tokenSet.id,
}
request.cookieAuth.set(session);
const returnScript = `<script type="application/javascript" >(function() { setTimeout(function() {window.location = "http://localhost:3000"})})()</script>`;
return h.response(returnScript)
} catch (e) {
return h.response('Internal server error').code(500)
}
}
}
любая помощь будет оценена.