很多小伙伴在用cookie的时候,不知道应该把它放在代码的什么位置,有一些还运行出现了错误,所以小编觉得还是有必要单独写一遍文章用来说明。我们都知道用户发送请求查看的浏览器,是需要一定的验证才能通过,我们要用cookie进行获取数据也自然要在这一步进行。下面就python爬虫Cookie是否放在请求头上的问题,小编带大家进行探究。
用户在输入用户名和密码之后,浏览器将用户名和密码发送给服务器,服务器进行验证,验证通过之后将用户信息加密后封装成Cookie放在请求头中返回给浏览器。
HTTP/1.1 200 OK Content-type: text/html Set-Cookie: user_cookie=Rg3vHJZnehYLjVg7qi3bZjzg; Expires=Tue, 15 Aug 2019 21:47:38 GMT; Path=/; Domain=.169it.com; HttpOnly [响应体]
浏览器收到服务器返回数据,发现请求头中有一个:Set-Cookie,然后它就把这个Cookie保存起来,下次浏览器再请求服务器的时候,会把Cookie也放在请求头中传给服务器:
GET /sample_page.html HTTP/1.1 Host: www.example.org Cookie: user_cookie=Rg3vHJZnehYLjVg7qi3bZjzg
服务器收到请求后从请求头中拿到cookie,然后解析并到用户信息,说明此用户已登录,Cookie是将数据保存在客户端的。
这里我们可以看到,用户信息是保存在Cookie中,也就相当于是保存在浏览器中,那就说用户可以随意修改用户信息,这是一种不安全的策略!
强调一点:Cookie无论是服务器发给浏览器还是浏览器发给服务器,都是放在请求头中的!
看完整篇文章的小伙伴一定要明确了,Cookie是需要放在请求头上执行的,因为这是我们获取数据的关键步骤,小伙伴们一定不要忘记了。
神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试