2
如果不對任何路由應用策略,hapi-auth-cookie
正在保護所有路由,包括靜態路由。hapi-auth-cookie保護所有路由,包括靜態的
server.register(require('hapi-auth-cookie'), function (err) {
if (err) {
logError(err);
}
server.auth.strategy('session', 'cookie', true, {
password: 'things really long',
clearInvalid: true,
isSecure: false,
validateFunc: function (request, session, callback) {
cache.get(session.sid, (err, cached) => {
if (err) {
return callback(err, false);
}
if (!cached) {
return callback(null, false);
}
return callback(null, true, cached.account);
});
}
});
});
這裏是我的路線:
{
method: 'POST',
path: '/api/1/doSomething',
config: {
validate: {
payload: someJoyObject
},
handler: function(request, reply) {
stuff
}
}
}
和
{
method: 'GET',
path: '/{param*}',
handler: {
directory: {
path: './public',
listing: false,
index: true
}
}
}
我無法載入我的應用程序的任何文件:
{"statusCode":401,"error":"Unauthorized","message":"Missing authentication"}
謝謝,馬特。不能相信我錯過了這一點。對於其他人:'server.auth.strategy(名稱,方案,[模式],[選項])'和'模式 - 如果爲true,則該方案被自動分配爲任何路由的必需策略,而不需要auth配置。 ' –