什么是http:

http是属于应用层(基于tcp的连接方式)的面向对象的协议,是计算机通过网络通信的规则,使得浏览器向web服务器请求信息和服务
http协议特点:
  • http是一种无状态协议(对食物处理没有记忆能力,缺少状态意味着如果后续处理需要前面的信息,他必须重传)
  • 允许任意类型的数据对象,正在传输的类型由Content—Type加以标记
  • 无连接:限制每次连接只处理一个请求,服务器处理完客户的应答后,断开连接。
  • 支持c/s模式
  • 客户向服务器请求服务时,只需传送请求方法和路径
完整的http请求:有7个步骤
1建立tcp连接
2web浏览器向web服务器发送请求命令
3web浏览器发送请求头信息(在chrome下f12查看network中的headers)
4web服务器应答
5web服务器发送应答头信息
6web服务器向浏览器发送数据
7web服务器关闭tcp连接
 
一个http请求的请求行一般由4部分组成:Method Request-URI HTTP-Version CRLF
Method:http请求的方法或动作,比如是get还是post请求
2正在请求的url(请求的地址
3请求头,包含一些客户端环境信息,身份验证信息,版本信息等
4请求体(请求正文,包含客户提交的查询字符串信息,表单信息等)
 
get:
一般用于信息获取,使用url传递参数,对所发送信息的数量也有限制,一般在2000个字符串
post:
一般用于修改服务器上的资源,对所发送信息的数量无限制
一个get请求执行一次和执行1万次是一样的
 
一个http响应由三部分组成:
1一个数字和文字组成的状态码,用来显示请求是成功还是失败,
2响应头,响应头也和请求头一样包含许多有用信息,例如服务器类型,日期时间,内容类型和长度
3响应体(响应正文,服务器传过来的字符串,http代码
 
http状态码由3位数字组成,首位数字定义了状态码的类型:
1xx:信息类,表示收到web浏览器请求,正在进一步处理中
2xx:成功,表示用户请求被争取接受,理解和处理例如:200
ok
3xx:重定向,表示请求没有成功,客户必须采取进一步动作
4xx:客户端错误,表示客户端提交的请求有错误,例如:404not
found。意味着请求中所引用的文档不存在
5xx:服务器错误,表示服务器不能完成对请求的处理 如:500
 

几种常见状态码

200:OK 请求成功 处理方式:获得响应的内容,进行处理

400:Bad Request 非法请求 处理方式:丢弃

401:Unauthorized 未授权 处理方式:丢弃

403:禁止 处理方式:丢弃

404:没有找到 处理方式:丢弃

500:服务器内部错误 服务器遇到了一个未曾预料的状况,导致了它无法完成对请求的处理。一般来说,这个问题都会在服务器端的源代码出现错误时出现。

502:bad gate 网关错误

503:服务出错 由于临时的服务器维护或者过载,服务器当前无法处理请求。这个状况是临时的,并且将在一段时间以后恢复。

请求报头:

Accept:用于指定客户端接受哪些类型的信息

Accept—Charset:指定客户端接受的字符集

Accept-Encoding:指定可接受的内容编码

Accept—Language:指定一种自然语言。

Authorization:请求报头域主要用于验证客户端有权查看某个资源

Host:指定被请求资源的Internet主机和端口号

响应报头:

Location:响应报头域用于重定向接受者到一个新的位置,Location响应报头域常用在更换域名的时候

Server:服务器用来处理请求的软件信息

http协议与常见状态码的更多相关文章

  1. HTTP协议及常见状态码

    超文本传输协议(HTTP)是用于传输诸如HTML的超媒体文档的应用层协议.它被设计用于Web浏览器和Web服务器之间的通信,但它也可以用于其他目的. HTTP遵循经典的客户端-服务端模型,客户端打开一 ...

  2. 了解一下Http常见状态码、Http协议的工作特点和原理、Http请求Post与Get的区别

    HTTP协议常见状态码状态码的作用负责标记客户端请求服务器的返回结果,标记服务器端的处理是否正常,通知出现的错误等等职责,借助客户端可以知道客户端是否正常请求服务端.五大类:1XX(信息类状态码,接收 ...

  3. HTTP协议、HTTP请求方法、常见状态码、HTTP消息

    HTTP协议 客户端请求,服务端响应.浏览器与服务器不建立持久连接,响应后连接失效. HTTP请求方法 一.GET GET方法用于获取请求页面的指定信息. 二.HEAD 除了服务器不能在响应里返回消息 ...

  4. 19. HTTP协议二:HTTP请求与响应、常见状态码

    HTTP请求与响应 HTTP请求 HTTP请求是指从客户端到服务器端的请求消息.HTTP请求主要由三部分构成,请求行.请求头(headers).body(请求数据). 上图是笔者用Charles抓包工 ...

  5. HTTP协议6之状态码--转

    HTTP状态码,我都是现查现用. 我以前记得几个常用的状态码,比如200,302,304,404, 503. 一般来说我也只需要了解这些常用的状态码就可以了.  如果是做AJAX,REST,网络爬虫, ...

  6. http常见状态码有哪些?

    ajax常见面试题 1:什么是ajax?ajax作用是什么? 异步的javascript和xml AJAX 是一种用于创建快速动态网页的技术. ajax用来与后台交互 2:原生js ajax请求有几个 ...

  7. 计算机网络【9】—— HTTP1.0和HTTP1.1的区别及常见状态码

    一.HTTP1.0与HTTP1.1的区别 1.HTTP 1.1支持长连接(PersistentConnection)和请求的流水线(Pipelining)处理 HTTP 1.0规定浏览器与服务器只保持 ...

  8. Python Requests库 Get和Post的区别和Http常见状态码

    (1)   在客户端,Get方式在通过URL提交数据,数据在URL中可以看到:POST方式,数据放置在HTML HEADER内提交. (2)   GET方式提交的数据最多只能有1024 Byte,而P ...

  9. http常见状态码及其解析

    HTTP状态码常见状态码及其解析 状态码 状态码英文名称 中文描述 100 Continue 继续.客户端应继续其请求 101 Switching Protocols 切换协议.服务器根据客户端的请求 ...

随机推荐

  1. 关于IK 分词器

    准备: 1 创建索引: PUT my_index PUT my_index2 2 先做好映射: PUT /my_index/*/_mapping { "properties": { ...

  2. 数电——全减器分析(用74HC138设计提示)

    -1=1(即Di=1). Di=(Y1' * Y2' * Y4' * Y7')'可以得到74HC138来表示,(注意:Ai,Bi,Ci-1的各自位权对应A2,A1,A0) Ci同理可得.

  3. JS中点击事件冒泡阻止

    JS中点击事件冒泡阻止 解析: 一个div层'out',内含有一个div层'in'.如下: 两个层都绑定了点击事件,但是点击in层的时候,点击事件会出现冒泡现象,同时也会触发out层的点击事件. 但是 ...

  4. delphi c#语法转换

    delphi c#语法转换 delphi c#       s:array[1..5] of integer TIArr  = array of integer; Berlin有这个新功能 TArra ...

  5. vue.js 组件引用之初级

    1. 构造组件,及组件引用:1.1 构造一个组件,1.2 注册一个组件,1.3  实例化Vue()即引用Vue() <!DOCTYPE html> <html lang=" ...

  6. .NETMVC小笔记

    .NETMVC如何不引用_Layout.chtml view文件夹里面有个_ViewStart.cshtml文件,打开可以看到 @{ Layout = "~/Views/Shared/_La ...

  7. 封装jQuery下载文件组件

    使用jQuery导出文档文件 jQuery添加download组件 jQuery.download = function(url, data, method){ if( url && ...

  8. FMS Dev Guide学习笔记(SharedBall)

    一.开发交互式的媒体应用程序1.共享对象(Shared objects) ----SharedBall example 这个SharedBall example创建了一个临时的远程共享对象.类似于多人 ...

  9. PageRank算法和谷歌搜索讲解

    PageRank算法和谷歌搜索讲解 吴裕雄 PageRank算法实际上就是Google使用它来计算每个网页价值的算法. Google每次的搜索结果都有成百上千万甚至上亿个相关的查询网页链接.如果将所有 ...

  10. 学JS的心路历程-JS支持面向对象?(二)

    昨天讲了面向对象的继承,今天我们来谈谈多态和封装吧! 多态polymorphism 抽象讲法解释,就是使用单一界面操作多种型态的物件 继承父类别,定义与父类别中相同的方法,但实作内容不同,称为复写(o ...