Ajax(一)——Ajax基础概念,HTTP头部(重点)

一、概念

Ajax(Asynchronous JavaScript and XML,异步JavaScript和XML)是利用JavaScript脚本与XML数据实现客户端与服务器端进行异步通信的一种方法。

  • 同步:当一个任务A进行中不能开启其它新任务(其它任务只能等待),必须等A结束后其它的任务可以运行(霸道)
    生活示例:打电话

  • 异步: 当一个任务A进行中能开启其它新任务,不需要等待
    生活示例:微信

Ajax不是javascript,ajax是基于javascript的一种用于创建快速动态网页的技术。

Ajax的组成

  • 基于标准的HTML结构与CSS样式
  • 通过DOM实现动态显示和交互
  • 通过XML进行数据交换和处理
  • 使用XMLHttpRequest插件进行异步通信

二、 浏览器开发工具Network

在这里插入图片描述

  1. NetWork: 网络 网络控制面板,抓取网络中传递所有数据
  2. [*]Disable cache 禁用缓存,希望网络中每一次数据最新
  3. [] 红点按钮 记录按钮 如果灰色再次点击红
  4. All 所有 抓取网络中所有类型数据

打开一个reg.html:

在这里插入图片描述

  • Name: reg.html #获取服务器资源
  • Status: 200 #响应状态码 200 响应成功
  • Type:document #文档 此次响应数据html网页
  • Size:343B #文档大小
  • Time:2ms #响应给你网页一共花 2ms
    在这里插入图片描述

三、HTTP头部信息

HTTP(超文本传输协议)是一种应用层协议,负责超文本的传输。

HTTP分为:请求Request响应Response

3.1 请求Request

HTTP请求信息三个部分:

  • 请求行
  • 消息报头(消息报头后是一个空行)
  • 请求正文(可选):如果客户端发送POST或者PUT请求,才会有请求主体
<request-line>				//请求行
<headers>					//消息报头
<blank line>				//空行
[<request-body>]			//请求正文

请求行
Method Requst-URI HTTP-Version CRLF

  1. method:请求方法,大写形式,如POST、GET
  2. Request-URI:表示统一资源标识符
  3. HTTP-Version:表示请求的HTTP协议版本
    HTTP/1.1 现在浏览器与服务器使用HTTP协议版本
  4. CRLF:回车和换行

示例一:附带参数的GET请求

//GET请求,url:/bbs  查询字符串:/?user=css8%20跟在url后 HTTP是1.1版本
GET /bbs/?user=css8%20 HTTP/1.1		//请求行


//消息报头 key:value
HOST:www.mysite.cn					//host:请求的域名

User-AGENTT:Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.0.8)		
Gecko/2017032609 Firefox/13.0.8		//浏览器自我介绍

Accept-Language: zh-CN         		//浏览器告诉服务器接收语言 zh简体中文 CN中国
Accept-Encoding: gzip           	//浏览器告诉服务器可以使用gzip压缩文件

Connection:Keep-Alive				//请求服务器请打开持久连接功能(7)   #提升效率

3.2 响应Response

HTTP响应三个部分:

  • 状态行
  • 消息报头
  • 响应正文
<status-line>				//状态行
<headers>					//消息报头
<blank line>				//空行
[<response-body>]			//请求正文

状态行
HTTP-Version Status-Code Reason-Phrase CRLF

  1. HTTP-Version:表示请求的HTTP协议版本
  2. Status-Code:服务器发回的响应状态代码
  3. Reason-Phrase:状态代码的文本描述
  4. CRLF:回车和换行

常用状态代码、描述

1** 信息,服务器收到请求,需要请求者继续执行操作
2** 成功,操作被成功接收并处理
3** 重定向,需要进一步的操作以完成请求
4** 客户端错误,请求包含语法错误或无法完成请求
5** 服务器错误,服务器在处理请求的过程中发生了错误,mysql停止工作

状态代码状态描述状态说明
200ok客户端请求成功
304使用缓存
400Bad Request客户端请求有语法错误,不能被服务器所理解
401Unauthorized请求未经授权,这个状态代码必须和WWW-Authenticate报头
403Forbidden服务器收到请求,但拒绝提供服务
404Not Found请求资源不存在,例如输入了错误的URL
500Internal Server Error服务器发生不可预期的错误
503Server Unavailable服务器当前不能处理客户端的请求,一段时间后,可能恢复正常

示例二:响应示例

示例


//状态行
//HTTP是1.1版本,200状态代码,OK是状态代码描述
HTTP/1.1 200 OK

//消息报头
 Server: nginx          	//服务器:种类 nginx apache tomcat ....
 Date: Thu, 03 Jun       	//服务器发送数据时间
 Connection: keep-alive  	//开启持久连接
 Content-Length:1700       //响应主体内容长度  
 Content-Type: text/html 	//响应主体内容类型 text/html  网页
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

你脸上有BUG

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值