cookie

day60

旧巷老猫 提交于 2019-12-06 12:58:41
目录 Cookie和Session Cookie Django操作cookie 设置cookie 获取cookie 设置cookie超时时间 删除cookie Session 设置session 获取session 删除session 设置失效时间 中间件 Django请求生命周期流程图 Cookie和Session 目的:为了保存客户端的用户状态 原因:HTTP协议是无状态的 Cookie 保存在客户端浏览器上的键值对 cookie是有服务端设置的,浏览器有权禁止cookie的写入 Django操作cookie 利用 obj = HttpResponse() 对象操作cookie 设置cookie obj.set_cookie('key','value') 获取cookie obj.get_cookie('key') request.COOKIES.get('key') 设置cookie超时时间 obj.set_cookie('key','value',max_age=3) # 超时时间以秒为单位 obj.set_cookie('key','value',expires=3) # 给IE浏览器设置 删除cookie 注销或退出登陆 Session 保存在服务端上的键值对 session的工作机制依赖于cookie 设置session request.session['key']

cookie与session

主宰稳场 提交于 2019-12-06 12:52:29
目录 cookie 与 session: cookie: django内操作Cookie 设置超时时间: cookie版登录: session: session相关方法: django内session设置: session版登录验证: token cookie 与 session: cookie 与 session 原理: ​ 1.保存客户端的用户状态 ​ 2.产生原因 : HTTP协议是无状态的(不会保存用户的状态) cookie: cookie介绍 ; 指的是一段小信息,它是服务器发送出来存储在浏览器上的一组组键值对,下次访问服务器时浏览器会自动携带这些键值对,以便服务器提取有用信息 cookie查看 : 在浏览器上开发者模式,Network--->all---> Cookie 优点 :  服务端不用存储用户数据,减轻了服务器的压力 缺点 :  信息保存在客户端,信息不安全性增加(web领域内没有一定的安全) django内操作Cookie django内操作Cookie: #获取cookie : request.COOKIES['key'] 获取普通版cookie 加盐版cookie (加密) request.get_signed_cookie(key,default=RAISE_ERROR,salt='',max_age=None) 参数 : default :默认值

Django之cookie与session

房东的猫 提交于 2019-12-06 12:49:16
1.cookie与session的简述: 为什么会有这些技术:   1.目的:是为了保存客户端的用户状态   2.原因:HTTP协议是无状态的 2.cookie: (1)保存在客户端浏览器上的键值对;cookie虽然是保存在客户端浏览器上的键值对但是他是有服务端设置的;浏览器有权禁止cookie的写入。 (2)django如何操作cookie    obj=HTTPResponse()   1.利用对象你才可以操作cookie obj = HttpResponse return obj obj = render() return obj obj = redirect() return obj   2.如何设置cookie: obj.set_cookie('k1','v1')#告诉浏览器设置   3.如何获取cookie: request.COOKIES.get('k1')#获取浏览器携带过来的cookie值 request.get_signed_cookie(key, default=RAISE_ERROR, salt='', max_age=None) #参数:default:默认值,salt:加锁盐,max_age:后台控制过期时间   4.如何设置cookie的超时时间: obj = set_cookie('k1','v1',max_age=3) obj = set

Python爬虫系列:四、Cookie的使用

人盡茶涼 提交于 2019-12-06 12:43:25
Cookie,指某些网站为了辨别用户身份、进行session跟踪而储存在用户本地终端上的数据(通常经过加密) 比如说有些网站需要登录后才能访问某个页面,在登录之前,你想抓取某个页面内容是不允许的。那么我们可以利用Urllib库保存我们登录的Cookie,然后再抓取其他页面就达到目的了。 在此之前呢,我们必须先介绍一个opener的概念。 1.Opener 当你获取一个URL你使用一个opener(一个urllib.OpenerDirector的实例)。在前面,我们都是使用的默认的opener,也就是urlopen。它是一个特殊的opener,可以理解成opener的一个特殊实例,传入的参数仅仅是url,data,timeout。 如果我们需要用到Cookie,只用这个opener是不能达到目的的,所以我们需要创建更一般的opener来实现对Cookie的设置。 2.Cookielib cookielib模块的主要作用是提供可存储cookie的对象,以便于与urllib模块配合使用来访问Internet资源。Cookielib模块非常强大,我们可以利用本模块的CookieJar类的对象来捕获cookie并在后续连接请求时重新发送,比如可以实现模拟登录功能。该模块主要的对象有CookieJar、FileCookieJar、MozillaCookieJar、LWPCookieJar。

day60

随声附和 提交于 2019-12-06 12:33:50
Cookie与Session组件   一、cookie:   由于Http协议的无状态的特点,也就是说即使第一次和服务器连接后并且登录成功后, 第二次请求服务器依然不能知道当前请求是哪个用户,cookies的出现就是为了解决这一现象。 cooki就是保存在客户端浏览器上的键值对: 工作原理:当用户登录成功后,浏览器上会保存一些信息,下次再来访问的时候,就会携带着这些信息去访问服务端,服务端通过这些信息来识别出你的身份 7  二、session:    session和cookie的作用有点类似,都是为了存储用户相关的信息。不同的是,cookie是存储在本地浏览器,而session存储在服务器。存储在服务器的数据会更加的安全, 不容易被窃取。但存储在服务器也有一定的弊端,就是会占用服务器的资源,但现在服务器已经发展至今,一些session信息还是绰绰有余的。     session就是保存在服务器上的键值对 session虽然是保存在服务器上的键值对 但是它是依赖于cookie工作的 cookie就是保存在客户端浏览器上的键值对,点击查看已经登录了的Cookie,会自动保存一些信息 查看cookie的方法 如何操作cookie和session   前提分析:Django返回给客户端浏览器的都必须是HttpResponse对象; 三板斧:   return HttpResonse():

session cookie 中间件

耗尽温柔 提交于 2019-12-06 12:27:17
前言 在学习的路上就像我在山上修炼了10 年 重出江湖却发现江湖不见了......学会了装饰器却被cookie和seesion 学会了session 却又遇见了中间件 学了中间件就是简单暴力. cookie 就是我们在发出post请求是会带上cookie值 就是一个字典的 因此我们可以设置一个cookie值来判断函数执行的方向 相当于一个函数中的装饰器 我们来拿登录举例 def login(request): if request.methor == 'GET': return render(request,'login.html') else: username=request.POST.get('username') password = request.POST.get('password') if username='胡斌' and password = 'superdsb': return redirect('index') else: return redirect('login') 就是在登录主页的时候是需要登录的,原来最陋的办法就是写一个装饰器,现在就不需要了就用上了cookie def login(request): if request.methor == 'GET': return render(request,'login.html') else:

Cookie和Session的区别

孤街醉人 提交于 2019-12-06 12:21:53
1、存储位置不同 Cookie存储在客户端 Session存储在服务器端 2、存储大小不同 单个Cookie保存的数据<=4kb,一个站点最多保存20个cookie 对于Session来说并没有上线,但出于对服务器性能的考虑,尽量不要设置过多的session在服务器上 3、存储方式不同 cookie是以AscII码存储 session可以是json、等 4、隐私策略不同 cookie对用户来说可以看见,对不法份子设置cookie欺诈 session存储在服务器上对用户是不可见的 5、服务器压力不同 cookie保存在客户端,不占用服务器资源,对于并发用户十分多的用户cookie是一个很好的选择 session存储在服务器上,每个用户都会产生一个session,对于用户量非常多的网站,会产生很多的session,十分占用服务器内存 6、有效期不同 开发可以通过设置cookie的属性,达到使cookie长期有效 session依赖于JSESSIONID的cookie,而cookie JSESSIONID的过期时间默认为-1,只需关闭窗口该session就会失效,因而session不能达到长期有效的效果。 7、浏览器支持不同 假如客户端浏览器不支持cookie: cookie是需要客户端浏览器支持的,假如客户端禁用了cookie,或者不支持cookie,则会话跟踪会失效

数据埋点学习之数据埋点概念学习

梦想与她 提交于 2019-12-06 12:03:00
数据埋点概念拆分成三部分来学习: 术语:一些专业数据的说明,例如会话session,URL 定义:针对口径的说明和解释,例如订单数、支付订单,GMV 黑话:专业约定的俗语,例如渠道,来源 1.术语 会话,用户访问互联网的某个网站时,存储在会话中的数据不会丢失,只有当用户x分钟没有访问或者退出访问时,会话才会结束。会话结束后,用户开始新的访问,这里产生的是新的会话。 新旧session的切换场景:当用户通过搜索引擎进入社交网站时,就进入了另外一个session,之前在搜索引擎里产生的会话就会过期。 对于埋点的意义: 通过会话我们能知道开始时间和结束时间,从而用于路径分析。 2.定义 研究定义是针对口径而言的, 例如对于订单数,是否包含退的订单?广州的订单,是人在广州下的单,还是寄到广州的单。 3.黑话 渠道是指来源,线索等等。广告或者数据埋点范围内,多数指的是一个来源入口,或者一个广告模式。 作业一:发现日常使用工作中的术语、名词、黑话,并总结记录下来 1.IDFA:Identifier For Advertising, 苹果设备独有的广告标识符,苹果提供的用于广告追踪的标识符,这个标识符是会发生变化的,相当于苹果设备的临时身份证。例如淘宝不仅能获取订单的数据,还可以得到同一个IDFA的旅游、社交网络行为等等,但因为会发生变化,用户可以设置还原IDFA,一定程度上保护了用户隐私。 2

Python Requests库快速入门

只谈情不闲聊 提交于 2019-12-06 11:50:33
发送请求 使用 Requests 发送网络请求非常简单。 一开始要导入 Requests 模块: >>> import requests 然后,尝试获取某个网页。本例子中,我们来获取 Github 的公共时间线: >>> r = requests.get('https://api.github.com/events') 现在,我们有一个名为 r 的 Response 对象。我们可以从这个对象中获取所有我们想要的信息。 Requests 简便的 API 意味着所有 HTTP 请求类型都是显而易见的。例如,你可以这样发送一个 HTTP POST 请求: >>> r = requests.post('http://httpbin.org/post', data = {'key':'value'}) 漂亮,对吧?那么其他 HTTP 请求类型:PUT,DELETE,HEAD 以及 OPTIONS 又是如何的呢?都是一样的简单: >>> r = requests.put('http://httpbin.org/put', data = {'key':'value'}) >>> r = requests.delete('http://httpbin.org/delete') >>> r = requests.head('http://httpbin.org/get') >>> r =

JavaWeb总结

自闭症网瘾萝莉.ら 提交于 2019-12-06 11:46:37
Web架构 ClientServer架构:客户端访问服务器;BroswerServer架构:浏览器访问服务器; 常见状态码 200 正常 300/301 页面重定向 403 权限不足 404 资源不存在 500 服务器内部错误 JSP解析过程 第一次访问时将JSP翻译为Java的Servlet再编译成class文件,后续访问只要代码没有变动,都可以直接读取class文件 Tomcat配置 1、修改端口号 apache-tomcat-9.0.16\conf\server.xml http修改port值,https修改redirectPort 2、添加项目 apache-tomcat-9.0.16\conf\server.xml <Host> 标签中添加 <Context docBase="Web项目路径" path="虚拟路径,即url中的路径" /> 该配置方式需要重启Tomcat 新建apache-tomcat-9.0.16\conf\Catalina\localhost\项目名.xml,文件中添加 <Context docBase="Web项目路径" path="虚拟路径,即url中的路径" /> ,将文件名改为ROOT.xml时,url中可省略项目名 3、设置首页 apache-tomcat-9.0.16\conf\web.xml 按顺序匹配 JSP Scriptlet <%