根据hapi框架文档here和教程here,为了创建cookie,您必须首先在创建服务器后立即调用server.state(...)来配置服务器
我有以下代码
const server = new hapi.Server();
try {
server.state('session', {
ttl: 1000 * 60 * 60 * 24,
encoding: 'base64json'
})
} catch (err) {
server.app.cookieError = err
}
导致以下错误:
Error: Cannot add state without a connection
我完全按照文档和其他教程,这个错误不应该发生,我搜索谷歌的错误文本,它会带来零结果!
答案 0 :(得分:3)
我认为您需要在启动状态之前通过调用server.connection方法来启动服务器。
答案 1 :(得分:2)
尝试这种方式,您需要使用连接配置服务器,然后启动它。
'use strict';
const Hapi = require('hapi');
const server = new Hapi.Server();
server.connection({ port: 3000, host: 'localhost'});
server.state('session', {
ttl: 1000 * 60 * 60 * 24,
encoding: 'base64json'
})
server.start((err) => {
if (err) {
throw err;
}
console.log(`Server running at: ${server.info.uri}`);
})