系统做网站的地方,网络营销渠道有哪几种,seo优化名词解释,平台制作计划一、cookie
cookie由服务器生成 #xff0c;存储在浏览器中的键值对数据,具有不安全性#xff0c;对应敏感数据应该加密储存在服务端每个域名的cookie相互独立浏览器访问域名为A的url地址#xff0c;会把A域名下的cookie一起传递到服务器cookie可以设置过期时间
django中设…一、cookie
cookie由服务器生成 存储在浏览器中的键值对数据,具有不安全性对应敏感数据应该加密储存在服务端每个域名的cookie相互独立浏览器访问域名为A的url地址会把A域名下的cookie一起传递到服务器cookie可以设置过期时间
django中设置cookie:
from django.http import HttpResponse# 接收路由2个参数一个key, 一个value
def SetCookie(request, key, value):response HttpResponse()response.set_cookie(key, value, max_age60 * 60)return response
注
max_age:
默认为None(关闭浏览器时删除Cookie)单位秒60*60 表示3600秒即1小时django中获取cookie:
from django.http import HttpResponse
# 接收路由的key进行查询返回数据
def GetCookie(request,key):value request.COOKIES.get(key)return HttpResponse(value)路由配置
from .CookieApiView import SetCookie, GetCookieurlpatterns [re_path(set_cookie/(.)/(.), SetCookie, nameset_cookie),re_path(get_cookie/(.), GetCookie, nameget_cookie),
]cookie测试
设置 http://127.0.0.1:8000/set_cookie/username/name1
获取 http://127.0.0.1:8000/get_cookie/username
二、Session
Ssession基于cookieSession把敏感的数据以加密的方式保存在服务器的数据库中Session也可设置过期时间
session设置
request.session[key]value
# 设置过期时间默认过期时间是2周
request.seesion.set_expiry(60*60)
session获取
valuerequest.seesion.get(key)
注: 如果没有这个key,返回空
清空session表中所有数据
request.seesion.flush()用途
这个函数用于刷新会话即清空会话中的数据但保留会话ID。这通常用于确保会话数据不会累积也不会被滥用。
注意事项
这个方法会删除当前会话中的所有数据但不会删除会话的cookie。这意味着会话ID会保留但session会话数据会被清空。
清理sessionId对应数据
request.seesion.clear()用途
这个函数用于完全清除当前会话中的所有数据。通常在用户注销或需要重置会话时使用。
注意事项
使用 clear()方法会删除会话中的所有数据包括用户ID、登录状态等。因此在调用这个方法之前请确保这是你想要的操作。
django中session配置
django中session数据存放在初始化下面这个应用时生成的数据表django_session中
INSTALLED_APPS [django.contrib.sessions,]三个字段示例 seesion_key、seesion_data、expirer_date
全局模块配置
INSTALLED_APPS [django.contrib.sessions,
]视图配置
from django.http import HttpResponsedef SetSession(request, key, value):request.session[key] valuereturn HttpResponse(session设置成功)def GetSession(request,key):value request.session.get(key)return HttpResponse(value)# 清空sessionID数据
def ClaerSession(request):request.session.clear()return HttpResponse(session清理成功)
# 清空session表中所有数据
def FlushSession(request):request.session.flush()return HttpResponse(session表中数据清理成功)3.路由配置
from .SessionApiView import SetSession, GetSession, ClaerSession, FlushSessionurlpatterns [re_path(set_session/(.)/(.), SetSession, nameset_session),re_path(get_session/(.), GetSession, nameget_session),re_path(flush_session/, FlushSession, nameflush_session),re_path(clear_session/, ClaerSession, nameclear_session),
]测试
设置 http://127.0.0.1:8000/set_session/username/name1
获取 http://127.0.0.1:8000/get_session/username
清理sessionId对应数据 http://127.0.0.1:8000/clear_session/
清空session表中所有数据 http://127.0.0.1:8000/flush_session/