gpt4 book ai didi

node.js - 如何创建 session express.js

转载 作者:太空宇宙 更新时间:2023-11-04 01:12:01 25 4
gpt4 key购买 nike

我运行 localhost:3000/name/john,创建一个 cookie然后 localhost:3000/name 显示 cookie我遇到控制台错误“TypeError:无法读取未定义的属性“名称””

看我的代码

 var express = require('express')
, http = require('http')
, path = require('path') ;

var app = express();

app.configure(function(){
app.set('port', process.env.PORT || 3000);
app.use(express.bodyParser()) ;
app.use(express.methodOverride()) ;
app.use(app.router);

app.use(express.cookieParser());
app.use(express.session({ secret: 'secret'}));
}) ;

app.get('/name/:name', function(req, res){
res.cookie('name' , req.params.name).send('<p>the cookie <a href="/name">Go here</a></p>') ;
});

app.get('/name', function(req, res){
console.log(req.cookies.name);
res.send("index");
});

http.createServer(app).listen(app.get('port'), function(){
console.log('Express server listening on port ' + app.get('port'));
});

如何解决这个问题?谢谢

最佳答案

修改您的 app.configure 代码如下。

app.configure(function(){
app.set('port', process.env.PORT || 3000);
app.use(express.bodyParser()) ;
app.use(express.methodOverride()) ;
app.use(express.cookieParser());
app.use(express.session({ secret: 'secret'}));
app.use(app.router);
}) ;

看看http://expressjs.com/api.html#app.use 。这里的问题在于中间件优先级。

关于node.js - 如何创建 session express.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16005730/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com