Web架构“圣经”-------HTTP权威指南--6

十一,客户端识别与cookie机制

1Web服务器会与成千上万个不同的客户端进行对话,那么服务器是如何知道与它进行交互的客户端是谁的呢?这就是客户端识别技术。

2,为什么要识别客户端呢?

最初的HTTP是一个匿名的、无状态的请求/响应协议,每条请求/响应都是独立的,互不相干;在互联网技术日益发展的信息时代,很多web站点希望能在与用户的交流过程中(比如:使用在线购物车的时候),能够构建增量的状态,即把之前的选择都记录下来,而不必每次登录都要进行讨厌的地址信息等填写;客户端的识别就可以解决这样的问题。

3,常用的几种客户端识别技术:

方法

对应的HTTP首部

描述

缺点

Emai地址

from

理想情况下,每个用户都有不同的email,因此可以用它来识别不同的用户

恶意服务器会搜集到这些地址来发送垃圾邮件

浏览器

User-agent

用这个首部可以告知服务器用户使用的浏览器信息

没有提供识别特定用户的有意义信息

父链接

Referer

通过这个首部,服务器可以知道用户上一层的访问,可以了解到用户的兴趣爱好等信息

没有提供识别特定用户的有意义信息

客户端IP

Client-ip

X-forwarded-for

要求每个用户都有不同的IP,而且服务器可以判断出每条请求的客户端IP

(1)IP只代表机器,不代表用户,用户可以共享机器;

(2)IP地址是可变的,而且很多都是动态分配的;

(3)HTTP代理和网关可能会打开与原始服务器的新的TCP连接,这时,服务器看到的不是客户端的IP

用户名和密码

authorization

当客服端发送请求的时候,由服务器主动询问“你是谁?”;当登录成功后,就可以在整个会话期间维护用户的身份

(1)需要在每个站点登录;

(2)可能要为不同的站点记住不同的用户名和密码,而且不同的站点,用户名和密码的设置规则可能不一样;

cookie

cookie

识别当前用户,实现持久连接的最好方式

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值