标签:
HTTP简介:
HTTP(HyperText Transfer Protocal)超文本传输协议,是一个客户端和服务器端请求和应答的标准;识一种通用的、不分状态的协议;也是用于用户代理之间及代理\网关到其他网络系统的通用通信协议。默认80端口。
HTTPS简介:
HTTPS(Hypetext Transfer Protocal Secure)超文本传输安全协议,是超文本传输协议和SSL/TL的组合 ,用以提供加密通信及对网络服务器身份鉴定。常用于敏感信息传输。默认443端口。
URI(Uniform Resource Identifier)统一资源标识符,是一个用于标识某一个互联网资源名称的字符串;允许用户对互联网中的资源通过特定的协议进行交互操作,它包括语法和相关协议的定义。
URL( Uniform\Universal Resource Locator)统一资源定位符,也被称为网页地址,如同网络上的门牌,是因特网上的标准的资源地址。
格式:
协议://主机名[:端口号]/路径/[?查询]
URN(Unifrom Resource Name)统一资源名,是基于某命名空间通过名称指定资源 的URI.URL代表 一个人的住处地址,URN则代表某是事物的身份,而URL提供查找该事物的方法。
URL,URN都是URI的子集。
HTTP消息:
有从客户到服务器的请求和从服务器到客户的应答组成 。
HTTP-消息=请求|回答;HTTP/1.1 消息
在HTTP1.1 中明确 描述了HTTP的请求消息既不能以CRLF开始,也不能以CRLF结束
HTTP方法:
OPTIONS:
该方法描述了咋请求URI确定的请求/应答过程中通信选项信息的请求,返回服务器针对特定资源所支持的HTTP请求方法。该方法允许客户机判断与某个资源相关的选项或者服务器能力相关选项,而不需要对资源采取任何操作或者发起一个对资源的获取请求。OPTTIONS的响应消息是不可以缓存的。
GET
该方法意味着获取由请求的URI标识的任何信息。如果请求消息中包括If-Modified-Since,If-Unmodified-Since,If-Match,If-None-Match或者If-Range头,该方法变为条件“get”,条件‘get“只传输符合条件的实体;如果Get请求中含有Range头,Get请求变为”部分Get“,只获取Range描述的部分。GEt的响应消息是可以缓存的。
HEAD
HEAD请求的响应中的HTTP头部中包含的元消息与GET请求发送的响应消息的头相同,可以用来后期实体的元消息,而不需要传输实体本身。经常用来测试超文本传输的有效性,可用性和最近的修改。
POST
向指定资源提交数据进行处理请求,数据被包含在请求体中。POST方法的响应是不能缓存的,除非响应包括恰当的Cache-Control或者Expires头。然而303(see other )响应可以 指引用户代理 获取可缓存的资源
PUT
put方法的请求中实体应该存储 在Request—URI指定的目标下。
DELETE
该方法请求服务器删除Request-URI所标识的资源。DELETE的响应消息是不可以缓存的。
TRACE
该方法用于引起远程服务器针对请求消息的应用层回显,也就是回显服务器收到的请求
CONNECT
HTTP1.1协议中预留CONNECT方法。该方法能够动态切换隧道的代理。
HTTP状态码:
HTTP状态码由三位数字组成的标识HTTP请求消息的处理的状态编码,共分成5类,分别以1,2,3,4,5开头;
1XX消息:
表示临时的响应,只包含状态行和可选的头,以空行结束。对于这类状态码来说,没有头是必须的。由于http1.1没有定义1xx状态码,服务器必须禁向HTTP1.1客户端发送1xx消息
1xx系列目前有2种,即100(continue)和101(switching Protocols)
2xx成功:
这类状态码表示客户端的请求被成功接受、处理和理解。
2XX有7个状态码:200-206.最常用的是200状态码,表示请求已经成功。
3xx重定向:
这类状态码指示需要用户代理采取进一步的操作来完成请求。
3xx有8种码:300-307,比较常用的有用户重定向301(Moved Permanently)和302(found)
4xx客户端错误:
表示客户端出错的情况,除了响应的HEAD请求,服务器应该包括解释错误的信息。这类状态码适用于任何请求。
4xx共有18种状态码400-417,最常用的是400(bad Request)
5xx服务器错误:
表示服务器有错误发生或者不能处理请求。
5xx包括6种错误500-505,最常用的是505,因为http对协议的个格式要求特别严格,如果格式检查不通过就可能报错505.
HTTP Cookie
Cookie通常是指用户浏览一个站点时,网站 发送的并且被用户的浏览器存储的一小块数据。当用户再一次 浏览相同的网站时,存储在Cookie中的数据会被六千自动获取发送给站点,站点根据Cookie可以知道用户之前的活动。是设计的一种可靠机制,用于记住用户已经做过 的活动或者用户再站点的状态。
Cookie总是保存在客户端中,按保存位置可分为内存Cookie和硬盘 Cookie。内存Cookie由浏览器维护,保存在内存中,浏览器 关闭 后则消失;硬盘Cookie保存在硬盘里,有一个过期时间,除非用户手工清理或者 到了过期时间,硬盘cookie不会被删除,存在时间是长期的。按存在 时间可分为非持久Cookie和持久Cookie。
常用术语:
Session Cookie:只是在用户使用站点期间存在,一个web 浏览器会在退出时删除SessionCookie
Persistent cookie:将会比用户的会话更长久。
Secure cookie:是指cookie 有secure属性,只能通过HTTPS才能使用,确保cookie在传输过程中总是被加密。
HttpOnly Cookie:只有在传输HTTP/HTTPS请求时才会被使用,这样可以限制其他的非HTTP API访问。
Third-party Cookie :是指cookie 中设置的域名和浏览器地址栏里的域名不一样;First-party Cookie是指cookie 中设置的域名是浏览器地址栏里的域名或者其子域名;
Super-Cookie是指设置域名为公共后缀的cookie,如.com,.org等。
Zombie Cookie:是任何在用户删除Cookie之后自动创建 的Cookie。
作用:
会话管理:用户浏览站点期间,Cookie可以被用来维护和用户相关的数据。
个性化:记住一些用户访问网站的信息,在用户未来再次访问时显示相关的内容。
跟踪:可被用于跟踪用户访问因特网的习惯。
HTTP Session:
session 是一种服务器机制,服务器一般使用类似于散列表结构保存信息。
标签:
原文地址:http://www.cnblogs.com/1tachi/p/5420894.html