📅  最后修改于: 2023-12-03 14:41:05.116000             🧑  作者: Mango
在 Express.js 中,res.clearCookie()
函数用于在响应中删除指定的 cookie。
res.clearCookie(name [, options])
name
: 要删除的 cookie 的名称(字符串)。options
(可选): 用于指定删除 cookie 的配置选项。domain
: 字符串,用于指定 cookie 的域。默认情况下,cookie 被指定为设置它的请求的域。path
: 字符串,用于指定 cookie 的路径。默认情况下,cookie 被指定为设置它的请求的路径。secure
: 布尔值,用于指定是否通过 HTTPS 发送 cookie。默认为 false
。httpOnly
: 布尔值,用于指定是否通过 HTTP 发送cookie。默认为 true
。res.clearCookie()
函数没有返回值,它会从响应中删除指定的 cookie。
以下示例演示了如何使用 res.clearCookie()
函数在 Express.js 中删除 cookie:
const express = require('express');
const app = express();
app.get('/clearCookie', (req, res) => {
res.clearCookie('cookieName');
res.send('Cookie cleared');
});
app.listen(3000, () => {
console.log('Server started on port 3000');
});
在上述示例中,当访问 /clearCookie
路径时,res.clearCookie()
函数被调用来删除名为 cookieName
的 cookie。响应中的内容将是 "Cookie cleared"。
同时,你可以通过传递配置选项来更改默认行为,例如:
res.clearCookie('cookieName', { path: '/admin', secure: true });
在上述示例中,我们指定了 path
和 secure
配置选项。这意味着只有在 /admin
路径下,且使用 HTTPS 发送响应时,cookieName
cookie 才会被删除。
通过使用 res.clearCookie()
函数,你可以在 Express.js 应用程序中删除指定的 cookie。这对于更新、删除或重置用户状态信息非常有用。记得根据需要使用适当的配置选项来自定义 cookie 的行为。