Http用户识别的机制方法分为如下几种:
1)、承载用户身份的HTTP首部
2)、客户端IP地址跟踪,根据客户端IP地址进行识别
3)、用户登录,用认证方式设别用户
4)、使用胖URL,一种在URL中嵌入识别信息的技术
5)、Cookie,一种持久化身份设别技术
 
关于HTTP首部的相关信息在下列表格中列出。
HTTP首部
 
首部名称 首部类型 描述
From 请求 用户的Email地址
User-Agent 请求 用户的浏览器软件
Referer 请求 用户是从这个页面上依照链接跳转过来的
Authorization 请求 用户名和密码
Client-IP 扩展 客户端的IP地址
X-Forwarded-For 扩展 客户端的IP 地址
Cookie 扩展 服务器产生的ID标签
 
  Form在HTTP首部一般是保存着用户的Email地址,但是由于网络安全的考虑,现在From首部都是由自动话的机器人或爬虫发送的,所以在From保存用户的Email的方式来识别用户是不可靠的。
  User-Agent就不用说了是用户浏览器软件的信息,这个是更不能识别用户的信息。
  Referer是记录用户从这个页面上依照链接跳转过来的,不能识别用户。
  Authorization 是用户登录使用的,  服务器向浏览器回送一个HTTP401 Login Required的响应代码,弹出登录框要求用户登录,然后浏览器会添加一个Authorization首部提供用户的登录信息。Web服务器无需被动的根据用户的IP地址来猜测用户的身份,他可以要求用户通过用户名和密码进行认证(登录)来显示地询问用户是谁。为了是Web站点的登录更加简单,HTTP中包含了一种内建机制,可以用WWW-Authenticate首部和Authorization首部想Web站点传送用户的相关用户名和密码。当登录成功之后浏览器就可以不断地在每条发往的请求中发送这个登录信息了,这样就可以确认用户了。
Client-IP 地址的弊端
1)、客户端IP地址描述是机器而非用户的特定标志,如果多个用户共享同一台计算机就无法识别
2)、很多英特网服务上会为用户非配动态的IP地址。
3)、很多用户通过网络地址转换(NAT)防火墙来访问网络内容。
4)、HTTP代理或网关会打开新的到原始服务器的TCP链接,Web服务器看到的将是代理IP地址,而非客户端。
  胖URL 是指在URL后面跟上用户的唯一标示符,但是就从URL的美观性和其他准确方面,都不是很好的一个决策。
  Cookie是使用最多的保存用户唯一标识,同时记录用户登录状态的工具
1)Cookie类型
  会话Cookie:一种临时Cookie,用户退出浏览器后就被删除
持久Cookie:存储在硬盘上,用于维护用户周期性访问某个网站的配置文件或登录名
会话Cookie与持久Cookie的区别是他们的过去时间。
第一次请求亚马逊的网站
 

登录成功后

Cookie保存有session-id以及session-token等相关信息,服务器端可以使Session-Id生成和用户是一一对应并且同一个用户生成的是不可一更改的。

Http客户端识别的方法的更多相关文章

  1. 前端学HTTP之客户端识别和cookie

    前面的话 Web服务器可能会同时与数千个不同的客户端进行对话.这些服务器通常要记录下它们在与谁交谈,而不会认为所有的请求都来自匿名的客户端.本文主要介绍客户端识别及cookie机制 HTTP首部 HT ...

  2. javascript四种类型识别的方法

    × 目录 [1]typeof [2]instanceof [3]constructor[4]toString 前面的话 javascript有复杂的类型系统,类型识别则是基本的功能.javascrip ...

  3. Python/dotNET Redis服务连接客户端调用SET方法的同时获取Redis服务器返回的内容

    在用Python或dotNET redis客户端连接redis服务器的时候,当你调用客户端的SET方法后同时还想得到其返回的字符串,那么需要处理一下. 1. Redis Python redis客户端 ...

  4. webservice axis2客户端设置代理方法(公司网络通过代理访问时)

    webservice axis2客户端设置代理方法(公司网络通过代理访问时)   UploadProcessInServiceStub stub = new UploadProcessInServic ...

  5. 深度卷积网络(DCNN)和人类识别物体方法的不同

    加州大学洛杉矶分校在PLOS Computing Biology上发表了一篇文章,分析了深度卷积网络(DCNN)和人类识别物体方法的不同:深度卷积网络(DCNN)是依靠物体的纹理进行识别,而人类是依靠 ...

  6. ASP输出JSON数据及客户端jQuery处理方法

    首先ASP处理JSON需要json官方提供的JSON For ASP 封装类文件,下载地址:http://code.google.com/p/aspjson/downloads/list 下载最新的J ...

  7. 和我一起学《HTTP权威指南》——客户端识别与cookie机制

    客户端识别与cookie机制 服务器需要区别是哪个客户端. 个性化接触 HTTP是匿名.无状态的请求/响应协议. Web站点希望: 对客户端的用户有更多的了解 追踪用户浏览页面的行为 因此,产生了几种 ...

  8. PL/SQL TOAD 不安装Oracle客户端连接数据库的方法

    不安装Oracle客户端连接数据库的方法 本机环境: win7 64位中文旗舰版 一.准备工作: 1)到ORACLE官网下载instantclient,下载地址:http://www.oracle.c ...

  9. 客户端调用服务器端方法——ASP.NET AJAX(Atlas)、Anthem.NET和Ajax.NET Professional实现之小小比较

    前几天曾经发过一篇<ASP.NET AJAX(Atlas)和Anthem.NET——管中窥豹般小小比较>,Jeffrey Zhao说用ASP.NET AJAX中的UpdatePanel似乎 ...

随机推荐

  1. set global show_compatibility_56 = on;永久生效MySQL重启

    1. 找到MySQL的配置文件,一般在MySQL的安装目录下,例如我的: C:\Program Files\MySQL\MySQL Server 5.7 ,打开下面的一个配置文件: my-defaul ...

  2. 江豚科技|专业移动APP开发与移动互联网解决方案

    北京江豚科技(www.eoiiioe.com)是国内领先的移动APP开发解决方案服务商,总部在中国的硅谷--中关村,分别在郑州.深圳设有服务机构. 江豚科技承接各类移动app开发外包和软件定制开发,我 ...

  3. c#连接SFTP上传文件

    名词解释(百度百科) sftp是Secure File Transfer Protocol的缩写,安全文件传送协议.可以为传输文件提供一种安全的加密方法.sftp 与 ftp 有着几乎一样的语法和功能 ...

  4. [leetcode]Find Minimum in Rotated Sorted Array II @ Python

    原题地址:https://oj.leetcode.com/problems/find-minimum-in-rotated-sorted-array-ii/ 解题思路:这道题和上一道题的区别是,数组中 ...

  5. HQ-SSAO (High-Quality SSAO)

    踩了前前后后无数坑,实现方式都试过了10几种,终于得到这个方案.虽说比不上2015最新的far-field AO,但至少在near/middle-field上,算是state of arts的实现了. ...

  6. 翻译--Blazing fast node.js: 10 performance tips from LinkedIn Mobile

    1.避免使用同步代码: // Good: write files asynchronously fs.writeFile('message.txt', 'Hello Node', function ( ...

  7. Ubuntu server 搭建Git server

    Ubuntu server 搭建Git server,git相比svn,最主要就是分布式了,每个客户端用户的本地都是一个版本管理控制器. Ubuntu server 版本为12.04 搭建步骤如下: ...

  8. 【转】安装OpenSSL缺失Microsoft Visual C++ 2008 Redistributables的解决方案

    from: http://www.cnblogs.com/luguo3000/p/3539815.html 在安装OpenSSL的时候通常会提示以下错误: "The Win32 OpenSS ...

  9. iPhone私有API

    一.基本知识 iPhone中的API除了公开的API:Published API外(或者叫文档中记录的API:Documented API),还有两类API:私有API:Private API和未公开 ...

  10. Selenium自动化测试项目案例实践公开课

    Selenium自动化测试项目案例实践公开课: http://gdtesting.cn/news.php?id=55