首页 新闻 会员 周边

layui如何获取cookies

0
悬赏园豆:5 [待解决问题]

想实现layui界面获取到登录的用户名应该怎么操作

耳东59的主页 耳东59 | 初学一级 | 园豆:90
提问于:2022-11-10 15:08
< >
分享
所有回答(2)
0

cookie 和layUI没有关系吧, 需要自己去操作cookie
原生: https://www.w3school.com.cn/js/js_cookies.asp
第三方: https://blog.csdn.net/chang100111/article/details/112777257

Mirck | 园豆:128 (初学一级) | 2022-11-11 11:20
0

永远不建议js从cookies中取东西,非常容易出现XSS,特别是身份相关的数据,并且服务端一般会将这类敏感数据在cookie中设置为httponly,就是告诉浏览器明令禁止js取。真想知道用户名,跟后台请求一下,后台从session里面拿给你就是了。

ensleep | 园豆:1682 (小虾三级) | 2022-11-13 20:02

string username = Request["username"].ToString();
string password = Request["password"].ToString();
Request.Cookies.Clear();
HttpCookie cookie = new HttpCookie("id");
HttpCookie cookie1 = new HttpCookie("username");
string sql = "select count(*) from AdminLogin where UserName=@username and PassWord=@password";
int i = (int)DBHelper.ExecuteScalar(sql, new SqlParameter("@password", password),
new SqlParameter("@username", username));
string j = "0";
if (i == 1)
{
j = "1";
string sqlid = "select * from AdminLogin where UserName=@username and PassWord=@password";
DataTable dt = DBHelper.ExecuteDataTable(sqlid, new SqlParameter("@password", password),
new SqlParameter("@username", username));
cookie.Value = dt.Rows[0]["id"].ToString();
cookie1.Value = dt.Rows[0]["username"].ToString();
cookie.Expires = DateTime.Now + new TimeSpan(0, 1, 0, 0);
Response.Cookies.Add(cookie);
cookie1.Expires = DateTime.Now + new TimeSpan(0, 1, 0, 0);
Response.Cookies.Add(cookie1);
}
else
{
j = i.ToString();
}
return Json(j, JsonRequestBehavior.AllowGet);
这样之后另一个页面怎么拿值呢,我一直拿不到值

支持(0) 反对(0) 耳东59 | 园豆:90 (初学一级) | 2022-11-14 16:01

@耳东59: 你为什么要清理掉cookies呢。另外,你直接存到Session里面就可以了,不要管cookies,你可以不通过cookies去实现任何东西。要不人工清理cookies或者往里面写东西。

支持(0) 反对(0) ensleep | 园豆:1682 (小虾三级) | 2022-11-14 16:11

@ensleep: 好的大佬,我试下看看

支持(0) 反对(0) 耳东59 | 园豆:90 (初学一级) | 2022-11-14 17:06
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册