一、什么是HTTP协议呢?
超文本传输协议(英文:HyperText Transfer Protocol,缩写:HTTP)是互联网上应用最为广泛的一种网络协议。
HTTP是一个客户端终端(用户)和服务器端(网站)请求和应答的标准(TCP)。
所谓HTTP就是超文本传输协议的缩写,他是万维网的基础。
二、URL
HTTP协议是通过URL来访问资源的,URL成为统一资源定位符,有时也俗称网页地址。
三、HTTP请求
HTTP请求由三部分组成,分别是:请求行、消息报头、请求正文。
HTTP请求方法有:
GET ------ 向特定的资源发出请求
POST ------ 向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。 POST请求可能会导致新的资源的建立和/或已有资源的修改。
HEAD ------ 向服务器索要与GET请求相一致的响应,只不过响应体将不会被返回。这一方法可以在不必传输 整个响应内容的情况下,就可以获取包含在响应消息头中的元信息。
PUT ------ 向指定资源位置上传其最新内容。
DELETE ------ 删除指定资源。
TRACE ------ 回显服务器收到的请求,主要用于测试或诊断。
CONNECT ------ 保留将来使用。
OPTIONS ------ 返回服务器针对特定资源所支持的HTTP请求方法。也可以利用向Web服务器发送’*’的请求 来测试服务器的功能性。
四、HTTP响应
HTTP响应也是由三个部分组成,分别是:状态行、消息报头、响应正文。
HTTP响应状态码:
1xx:指示信息--表示请求已接收,继续处理;
2xx:成功--表示请求已被成功接收、理解、接受;
3xx:重定向--要完成请求必须进行更进一步的操作;
4xx:客户端错误--请求有语法错误或请求无法实现;
5xx:服务器端错误--服务器未能实现合法的请求;
常见的状态码:
200 : OK --- 客户端请求成功;
400 : Bad Request --- 客户端请求有语法错误,不能被服务器所理解;
401 : Unauthorized --- 请求未经授权;
403 : Forbidden --- 服务器收到请求,但是拒绝提供服务;
404 : Not Found --- 请求资源不存在;
500 : Internal Server Error --- 服务器发生不可预期的错误;
503 : Server Unavailable --- 服务器当前不能处理客户端的请求 ;
五、HTTP消息报头实例
Remote Address:141.101.112.193:
Request URL:https://osu.ppy.sh/
Request Method:GET
Status Code: OK
Response Headers
cache-control:no-cache
cf-ray:254ac51bf02e13ef-LAX
content-encoding:gzip
content-type:text/html; charset=UTF-
date:Mon, Dec :: GMT
expires:Mon, Dec :: GMT
pragma:no-cache
server:cloudflare-nginx
status: OK
strict-transport-security:max-age=
version:HTTP/1.1
Request Headers
:host:osu.ppy.sh
:method:GET
:path:/
:scheme:https
:version:HTTP/1.1
accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
accept-encoding:gzip, deflate, sdch
accept-language:zh-CN,zh;q=0.8
cache-control:max-age=
以上是一个HTTP消息报头,可以通过开发者选项network查看。
转载自本人ITeye链接:http://xiaozhuang0706.iteye.com/blog/2264083