w w w . w d . c h a t
🗣 Wd提问
js写cookie到指定域名
🤖 Ai回答
在JavaScript中写入Cookie到指定域名

要在JavaScript中写入Cookie到指定域名,你需要设置`domain`属性。以下是实现方法:

基本方法

javascript
function setCookie(name, value, days, domain) {
let expires = ;
if (days) {
const date = new Date();
date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
expires = ; expires= + date.toUTCString();
}

// 设置cookie,包含domain参数
document.cookie = `${name}=${value }${expires}; path=/; domain=${domain ''}`;
}

使用示例

javascript
// 写入当前域名的cookie
setCookie('myCookie', 'value123', 30);

// 写入指定域名的cookie(必须是当前域的子域)
setCookie('subdomainCookie', 'value456', 30, '.example.com');

重要注意事项

1、域名限制:你只能为当前页面的域名或其子域设置cookie。例如:
如果当前页面是 `www.example.com`,你可以设置 `.example.com` 的cookie
但不能为完全不同的域名(如 `google.com`)设置cookie

2、子域名:要在所有子域名共享cookie,使用前导点(如 `.example.com`)

3、安全限制:现代浏览器有安全策略限制跨域cookie设置

4、HttpOnly:如果cookie被标记为HttpOnly,JavaScript无法修改它

更完整的实现

javascript
function setCookie(name, value, options = {}) {
options = {
path: '/',
...options
};

if (options.expires instanceof Date) {
options.expires = options.expires.toUTCString();
}

let updatedCookie = encodeURIComponent(name) + = + encodeURIComponent(value);

for (let optionKey in options) {
updatedCookie += ; + optionKey;
let optionValue = options[optionKey];
if (optionValue !== true) {
updatedCookie += = + optionValue;
}
}

document.cookie = updatedCookie;
}

// 使用示例
setCookie('user', 'John', {
domain: '.example.com',
expires: new Date(Date.now() + 86400e3), // 1天后过期
secure: true,
sameSite: 'strict'
});

删除Cookie

要删除cookie,可以设置过期时间为过去:

javascript
function deleteCookie(name, domain) {
document.cookie = `${name}=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/; domain=${domain ''}`;
}

希望这些信息对你有所帮助!
0
📍
IP地址 32.7.194.184
🔍
搜索次数 9
提问时间 2025-05-13 06:27:43

📣 商家广告

求名

求名

店名

店名

取名

取名

🛒 域名购买

热门提问

🌐 域名评估

最新挖掘

🖌 热门作画

🤝 关于我们

🗨 加入群聊
💬选择任意群聊,与同好交流分享

🔗 友情链接

🧰

站长工具

📢

温馨提示

本站所有 ❓️ 问答 由Ai自动创作,内容仅供参考,若有误差请用"联系"里面信息通知我们人工修改或删除。

👉

技术支持

本站由 🟢 豌豆Ai 提供技术支持,使用的最新版: 《豌豆Ai站群搜索引擎系统 V.25.10.25》 搭建本站。

上一篇 353136 353137 353138 下一篇