主页 > 电脑硬件  > 

Node.js中cookie-parser依赖详解

Node.js中cookie-parser依赖详解

解析 HTTP 请求中的 Cookie 的 Node.js 中间件

一、安装 npm install cookie-parser 二、基本使用 const express = require("express"); const cookieParser = require("cookie-parser"); const app = express(); // 使用 cookie-parser 中间件 app.use(cookieParser()); app.get("/", (req, res) => {   // 获取请求中的 Cookie   const cookies = req.cookies;   console.log("Cookies:", cookies);   res.send("Cookie parsed successfully"); }); const port = 3000; app.listen(port, () => {   console.log(`Server running on port ${port}`); }); 二、解析与设置 Cookie 1. 解析 Cookie

`cookie-parser` 会把请求中的 Cookie 解析成一个对象,存储在 `req.cookies` 中。可以通过访问 `req.cookies` 来获取 Cookie 的值。

app.get("/get-cookie", (req, res) => {   const username = req.cookies.username;   if (username) {     res.send(`Hello, ${username}`);   } else {     res.send("No username cookie found");   } }); 2. 设置 Cookie

使用 `res.cookie()` 方法可以设置响应中的 Cookie。该方法接受三个参数:Cookie 的名称、值和可选的配置对象。

app.get("/set-cookie", (req, res) => {   // 设置一个名为 username 的 Cookie,值为 John,有效期为 1 小时   res.cookie("username", "John", { maxAge: 3600000, httpOnly: true });   res.send("Cookie set successfully"); }); 3. 签名 Cookie

`cookie-parser` 支持对 Cookie 进行签名,以确保 Cookie 的完整性和安全性。在初始化 `cookie-parser` 时传入一个密钥,就可以使用签名 Cookie。

const express = require("express"); const cookieParser = require("cookie-parser"); const app = express(); // 使用带有密钥的 cookie-parser 中间件 app.use(cookieParser("mysecretkey")); app.get("/set-signed-cookie", (req, res) => {   // 设置一个签名的 Cookie   res.cookie("signedUsername", "Jane", { signed: true });   res.send("Signed cookie set successfully"); }); app.get("/get-signed-cookie", (req, res) => {   // 获取签名的 Cookie   const signedUsername = req.signedCookies.signedUsername;   if (signedUsername) {     res.send(`Hello, ${signedUsername}`);   } else {     res.send("No signed username cookie found");   } }); const port = 3000; app.listen(port, () => {   console.log(`Server running on port ${port}`); }); 三、清除 Cookie

使用 `res.clearCookie()` 方法可以清除客户端的 Cookie。需要指定要清除的 Cookie 的名称。

app.get("/clear-cookie", (req, res) => {   res.clearCookie("username");   res.send("Cookie cleared successfully"); });

标签:

Node.js中cookie-parser依赖详解由讯客互联电脑硬件栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“Node.js中cookie-parser依赖详解