cookie的属性值
时间: 2023-07-25 12:23:42 浏览: 96
cookie 的属性可以设置多个,以下是常见的 cookie 属性:
1. `name`:cookie 的名称。
2. `value`:cookie 的值。
3. `domain`:cookie 可用的域名。
4. `path`:cookie 可用的路径。
5. `expires`:cookie 的过期时间。
6. `max-age`:cookie 的最大存活时间(以秒为单位)。
7. `secure`:cookie 是否只能通过 HTTPS 协议传输。
8. `httpOnly`:cookie 是否只能通过 HTTP 协议访问,不能通过 JavaScript 访问。
以下是设置 cookie 属性的示例代码:
```javascript
document.cookie = "name=value; domain=example.com; path=/; expires=Thu, 01 Jan 2030 00:00:00 UTC; max-age=3600; secure; httpOnly;";
```
在这个示例中,设置了 cookie 的名称为 "name",值为 "value",可用的域名为 "example.com",可用的路径为 "/",过期时间为 2030 年 1 月 1 日,最大存活时间为 3600 秒,只能通过 HTTPS 协议传输,不能通过 JavaScript 访问。
相关问题
cookie属性
在 JavaScript 中,我们可以使用 `document.cookie` 属性来读取和设置 cookie。当我们设置 cookie 时,可以指定以下属性:
1. `expires`:指定 cookie 的过期时间,可以是一个日期对象或一个表示从现在开始的秒数。如果不指定该属性,则 cookie 将在浏览器关闭时过期。
2. `path`:指定 cookie 的路径,默认为当前页面的路径。
3. `domain`:指定 cookie 的域名,默认为当前域名。
4. `secure`:一个布尔值,指定是否使用安全连接(HTTPS)发送 cookie。
下面是一个设置 cookie 的示例代码:
```javascript
// 设置一个名为 "username" 的 cookie,值为 "john",并指定过期时间为 1 天后
document.cookie = "username=john; expires=" + new Date(Date.now() + 24 * 60 * 60 * 1000).toUTCString() + "; path=/";
// 设置一个名为 "password" 的 cookie,值为 "123",并指定路径为 "/admin"
document.cookie = "password=123; path=/admin";
// 设置一个名为 "rememberMe" 的 cookie,值为 "true",并指定域名为 ".example.com"
document.cookie = "rememberMe=true; domain=.example.com";
```
在读取 cookie 时,我们可以通过 `document.cookie` 属性获取当前页面中所有的 cookie,然后使用字符串操作方法来解析出需要的值。例如,要读取名为 "username" 的 cookie 的值,可以使用以下代码:
```javascript
// 获取当前页面中所有的 cookie
var cookies = document.cookie.split(";");
// 遍历所有的 cookie,找到名为 "username" 的 cookie,并获取其值
for (var i = 0; i < cookies.length; i++) {
var cookie = cookies[i];
while (cookie.charAt(0) == " ") {
cookie = cookie.substring(1);
}
if (cookie.indexOf("username=") == 0) {
var username = cookie.substring("username=".length, cookie.length);
break;
}
}
```
删除cookie 属性
在 JavaScript 中,要删除一个 cookie,可以通过设置其过期时间为过去的时间来实现。具体步骤如下:
1. 首先,获取要删除的 cookie 的名称。
2. 然后,使用 document.cookie 属性获取当前页面中所有的 cookie,将其保存在一个字符串中。
3. 接下来,解析该字符串,找到要删除的 cookie,并将其过期时间设置为过去的时间。
代码示例:
```javascript
function deleteCookie(name) {
// 获取当前页面中所有的 cookie
var cookies = document.cookie.split(";");
// 遍历所有的 cookie,找到要删除的 cookie
for (var i = 0; i < cookies.length; i++) {
var cookie = cookies[i];
// 删除 cookie 的名称和值
while (cookie.charAt(0) == " ") {
cookie = cookie.substring(1);
}
if (cookie.indexOf(name + "=") == 0) {
document.cookie = name + "=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;";
break;
}
}
}
```
以上代码中,deleteCookie() 函数接受一个参数 name,表示要删除的 cookie 的名称。函数首先使用 document.cookie 属性获取当前页面中所有的 cookie,然后遍历所有的 cookie,找到要删除的 cookie,并将其过期时间设置为过去的时间,从而删除该 cookie。
阅读全文