HTTP请求简介

HTTP协议

HTTP协议(HyperText Transfer Protocol,超文本传输协议)是因特网上应用最为广泛的一种网络传输协议,所有的WWW文件都必须遵守这个标准。

http请求是指从客户端到服务器端的请求消息。包括:消息首行中,对资源的请求方法、资源的标识符及使用的协议。HTTP默认使用80端口

注意:一般都是客户端主动发起请求,服务端接受请求返回响应,不可能是服务端主动发起请求。

常用的HTTP请求方式有以下四种:

get请求 请求获取request-URI所标识的资源---------一般用于查询

post请求 在request-URI所标识的资源后附加新的数据-----------一般用于新增

put请求  请求服务器存储一个资源,并利用request-URI作为其标识-------一般用于更新、编辑

delete请求  请求服务器删除request-URI所标识的资源----------一般用于删除

HTTP请求包含的内容:

请求行:独占一行,由请求方法、请求路径、请求的协议/版本组成

请求头:第二行到第N行,由键值对组成

空行

消息体(Json、xml、www-form-urlencoded):请求正文

HTTP响应包含内容

状态行:由协议/版本,状态码,状态描述

响应头:第二行到第N行,由键值对组成

空行

消息体:响应内容

HTTP请求头详解

Content-Type:HTTP请求提交的内容类型

cookie:HTTP请求发送时,会把保存在该请求域名下的所有cooki值一起发送给web服务器

User-Agent:浏览器表明自己身份详细信息(是那种浏览器)

Referer:浏览器向web服务器表明自己是从哪个网页URL获得点击当前请求中的网址

Host:请求的web服务器的域名地址

常见的HTTP响应状态码

以2开头的,如: 200 ok 

请求已成功,请求所希望的响应头或数据体将随此响应返回。出现此状态码是表示正常状态。

以3开头的,如:301 重定向

被请求的资源已永久移动到新位置

以4开头的,如:404请求错误

一般都是客户端的请求有问题

以5开头的,如:500服务器内部错误

http请求的特点

无连接

无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。服务器处理的请求很多,如果不断开链接,会被拖垮。

无状态

HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。

简单快速

客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。因为传输的东西少、报文格式简单,所以简单快速

灵活

HTTP允许传输任意类型的数据对象。传输的类型由Content-Type加以标记。允许传输的类型很多、所以灵活。

原文地址:https://www.cnblogs.com/king2/p/13759186.html