用js写一个获取cookie的方法
时间: 2024-06-02 13:14:12 浏览: 4
function getCookie(name) {
var cookieArr = document.cookie.split(';');
for(var i = 0; i < cookieArr.length; i++) {
var cookiePair = cookieArr[i].split('=');
if(name == cookiePair[0].trim()) {
return decodeURIComponent(cookiePair[1]);
}
}
return null;
}
// 使用示例
var myCookie = getCookie('myCookieName');
console.log(myCookie);
相关问题
帮我写一个获取cookie的js方法
当用户访问网站时,网站服务器可以向用户的浏览器发送一个包含 cookie 的 HTTP 响应头,浏览器则会将 cookie 保存在本地。当用户再次访问该网站时,浏览器会将保存的 cookie 发送给服务器,从而使服务器能够识别用户。
以下是一个获取 cookie 的 JavaScript 方法:
```javascript
function getCookie(name) {
const cookies = document.cookie.split(';');
for (let i = 0; i < cookies.length; i++) {
const cookie = cookies[i].trim();
if (cookie.startsWith(name + '=')) {
return cookie.substring(name.length + 1);
}
}
return '';
}
```
该方法接受一个参数 `name`,表示要获取的 cookie 的名称。该方法首先使用 `document.cookie` 获取所有 cookie,然后遍历每个 cookie,找到名称为 `name` 的 cookie,并返回其值。如果没有找到对应的 cookie,该方法返回一个空字符串。
使用该方法的示例:
```javascript
const myCookie = getCookie('myCookieName');
if (myCookie) {
console.log('My cookie value is: ' + myCookie);
} else {
console.log('My cookie is not set.');
}
```
在html里面写一个用cookie方法的登录界面,要密码验证
好的,以下是一个用cookie方法的简单登录界面的HTML代码示例,它通过JavaScript来设置和获取cookie:
```html
<!DOCTYPE html>
<html>
<head>
<title>Login</title>
<script type="text/javascript">
// 设置cookie
function setCookie(cname, cvalue, exdays) {
var d = new Date();
d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000));
var expires = "expires="+d.toUTCString();
document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
}
// 获取cookie
function getCookie(cname) {
var name = cname + "=";
var decodedCookie = decodeURIComponent(document.cookie);
var ca = decodedCookie.split(';');
for(var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == ' ') {
c = c.substring(1);
}
if (c.indexOf(name) == 0) {
return c.substring(name.length, c.length);
}
}
return "";
}
// 检查用户名和密码
function checkLogin() {
var username = document.getElementById("username").value;
var password = document.getElementById("password").value;
if(username == "" || password == "") {
alert("Please enter both username and password!");
return false;
}
// 检查用户名和密码是否正确
if(username == "admin" && password == "123456") {
// 用户名和密码正确,设置cookie并跳转到主界面
setCookie('username', username, 1); // 设置cookie有效期为1天
window.location.href = "index.html";
} else {
// 用户名或密码不正确,显示错误信息
alert("Invalid username or password!");
return false;
}
}
</script>
</head>
<body>
<h1>Login</h1>
<form action="javascript:void(0)" onsubmit="return checkLogin()">
<label for="username">Username:</label>
<input type="text" name="username" id="username"><br><br>
<label for="password">Password:</label>
<input type="password" name="password" id="password"><br><br>
<input type="submit" name="submit" value="Login">
</form>
</body>
</html>
```
在上面的代码中,我们为表单的提交按钮添加了一个JavaScript事件,当用户点击按钮时,它将调用checkLogin()函数来检查用户名和密码。如果用户名和密码正确,它将调用setCookie()函数来设置一个名为“username”的cookie,有效期为1天,并将用户重定向到主界面。如果用户名或密码不正确,它将显示一个警告框来提示用户。
在主界面中,我们可以使用JavaScript的getCookie()函数来获取保存在cookie中的值,例如:
```html
<!DOCTYPE html>
<html>
<head>
<title>Home</title>
<script type="text/javascript">
// 获取cookie
function getCookie(cname) {
var name = cname + "=";
var decodedCookie = decodeURIComponent(document.cookie);
var ca = decodedCookie.split(';');
for(var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == ' ') {
c = c.substring(1);
}
if (c.indexOf(name) == 0) {
return c.substring(name.length, c.length);
}
}
return "";
}
// 显示欢迎信息
window.onload = function() {
var username = getCookie("username");
if(username != "") {
document.getElementById("welcome").innerHTML = "Welcome, " + username + "!";
} else {
document.getElementById("welcome").innerHTML = "Please login first!";
}
};
</script>
</head>
<body>
<h1 id="welcome"></h1>
</body>
</html>
```
在上面的代码中,我们使用JavaScript的window.onload事件来在页面加载完成后获取cookie中的“username”值,并根据它来显示欢迎信息。如果cookie中没有保存任何值,则显示登录提示。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)