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。該方法接受三個參數(shù):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 依賴內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
node.js 開發(fā)指南 – Node.js 連接 MySQL 并進行數(shù)據(jù)庫操作
通常在NodeJS開發(fā)中我們經(jīng)常涉及到操作數(shù)據(jù)庫,尤其是 MySQL ,作為應用最為廣泛的開源數(shù)據(jù)庫則成為我們的首選,本篇就來介紹下如何通過NodeJS來操作 MySQL 數(shù)據(jù)庫。2014-07-07前端自動化開發(fā)之Node.js的環(huán)境搭建教程
這篇文章主要介紹了前端自動化開發(fā)之Node.js環(huán)境搭建的相關資料,文中介紹的非常詳細,對大家學習或者使用node.js具有一定的參考價值,需要的朋友們下面來一起看看吧。2017-04-04node.js調(diào)用Chrome瀏覽器打開鏈接地址的方法
其實在Node.JS中打開瀏覽器網(wǎng)址非常簡單,但還是有必要整理下分享給有需要的朋友們,這篇文章主要給大家介紹了node.js如何調(diào)用Chrome瀏覽器打開鏈接地址的方法,文中介紹的非常詳細,需要的朋友們下面隨著小編來一起看看吧。2017-05-0510個Node.js庫幫助你優(yōu)化代碼和簡化開發(fā)
這篇文章主要介紹了10個Node.js庫幫助你優(yōu)化代碼和簡化開發(fā),其中包括處理數(shù)組、對象、字符串庫Lodash,緩存數(shù)據(jù)處理庫Node-cache,解析、操作和格式化日期和時間庫Moment.js,Redis操作庫,發(fā)送電子郵件庫Nodemailer2023-05-05