Nodejs教程-Express.js Cookies 管理
什么是 Cookies
Cookies 是一小段信息,当用户浏览网站时从网站发送到用户的 Web 浏览器,并在用户加载该网站时存储在浏览器中。每次用户再次加载该网站时,浏览器都会将存储的数据发送回网站或服务器,以识别用户。
安装 cookie
在 Express.js 中获取 Cookie 能力。因此,通过以下命令使用 npm 安装 cookie-parser 中间件:
npm install cookie-parser
导入 cookie-parser 到你的应用程序中。
var express = require('express');
var cookieParser = require('cookie-parser');
var app = express();
app.use(cookieParser());
定义一个路由:
Cookie-parser 解析 Cookie 头,并通过以 cookie 名称为键的对象填充 req.cookies
。
让我们在 Express 应用程序中定义一个新的路由,比如设置一个新的 Cookie:
app.get('/cookie', function(req, res) {
res.cookie('cookie_name', 'cookie_value').send('Cookie is set');
});
app.get('/', function(req, res) {
console.log("Cookies : ", req.cookies);
});
每当浏览器请求该网站时,浏览器都会将该 Cookie 发送回服务器。
Express.js Cookies 示例
文件: cookies_example.js
var express = require('express');
var cookieParser = require('cookie-parser');
var app = express();
app.use(cookieParser());
app.get('/cookieset', function(req, res) {
res.cookie('cookie_name', 'cookie_value');
res.cookie('company', 'javatiku');
res.cookie('name', 'sonoo');
res.status(200).send('Cookie is set');
});
app.get('/cookieget', function(req, res) {
res.status(200).send(req.cookies);
});
app.get('/', function(req, res) {
res.status(200).send('Welcome to JavaTiku!');
});
var server = app.listen(8000, function() {
var host = server.address().address;
var port = server.address().port;
console.log('Example app listening at http://%s:%s', host, port);
});
输出:
在浏览器上打开页面 http://127.0.0.1:8000/
。
设置 Cookie:
现在打开 http://127.0.0.1:8000/cookieset
来设置 Cookie。
获取 Cookie:
现在打开 http://127.0.0.1:8000/cookieget
来获取 Cookie。