子域名是指主域名下的二级或更低级别的域名。例如,如果主域名是 example.com,那么 blog.example.com 和 shop.example.com 都是它的子域名。
Cookie 是一种存储在用户浏览器上的小型数据片段,用于跟踪用户的状态和偏好。服务器可以通过设置 HTTP 响应头来向用户的浏览器发送 Cookie,浏览器会在后续的请求中自动包含这些 Cookie。
当服务器在设置 Cookie 时,可以通过 Domain 属性指定该 Cookie 可以被哪些域名访问。如果 Domain 属性设置为 example.com,那么 blog.example.com 和 shop.example.com 都可以访问该 Cookie。
Secure 属性来确保 Cookie 只在 HTTPS 连接中传输,或者使用 HttpOnly 属性来防止 JavaScript 访问 Cookie。以下是一个简单的示例,展示如何在服务器端设置 Cookie 并允许子域名访问:
const express = require('express');
const app = express();
app.use((req, res, next) => {
res.cookie('sessionId', '12345', {
domain: '.example.com', // 允许所有子域名访问
path: '/', // 适用于所有路径
maxAge: 3600000, // 1小时
secure: true, // 仅在 HTTPS 中传输
httpOnly: true // 防止 JavaScript 访问
});
next();
});
app.get('/', (req, res) => {
res.send('Cookie set and accessible by subdomains');
});
app.listen(3000, () => {
console.log('Server is running on port 3000');
});希望这些信息对你有所帮助!如果有更多问题,请随时提问。
DB-TALK 技术分享会
云+社区沙龙online[新技术实践]
云+未来峰会
云+社区技术沙龙[第27期]
云+社区技术沙龙[第22期]
DBTalk技术分享会
云+社区开发者大会(杭州站)
云+社区开发者大会 武汉站