原生ajax

1 Ajax简介

Ajax,全称“Asynchronous JavaScript and XML”,即异步的 JavaScript 和 XML

通过Ajax可以在浏览器中向服务器发送异步请求,最大的优势:无刷新获取数据

2 XML简介

XML是可扩展标记语言,XML与HTML类似,区别:

  • XML被设计用来传输和存储数据
    HTML用来显示数据
  • XML中的标签都是自定义的
    HTML中都是预定义标签

XML现在已经被JSON取代了。

3 Ajax的特点

3.1 优点

  • 可以无需刷新页面与服务器端进行通信
  • 允许根据用户事件来更新部分页面内容

3.2 缺点

  • 没有浏览历史,不能回退
  • 存在跨域问题(同源)
  • SEO不友好,网页中的内容爬虫爬不到

4 HTTP协议

HTTP,超文本传输协议,协议详细规定了浏览器与服务器之间互相通信的规则。

4.1 HTTP请求报文

请求行: 请求类型-GET/POST URL 协议版本-HTTP/1.1
请求头:
Host:baidu.com
Cookie: name=baidu
User-Agent: chrome83

空行
请求体 GET请求可以为空

4.2 HTTP响应报文

响应行:协议版本-HTTP/1.1 状态码-200 状态字符串-OK
响应头:
Content-Type:text/html;charset=utf-8
Content-length:2048

空行
响应体:服务器返回的内容

5 原生Ajax的使用

5.1 基本使用步骤

  1. 创建XMLHttpRequest对象
  2. 设置请求方式和url
  3. 发送请求
  4. 拿到响应数据
// 创建xhr对象
const xhr = new XMLHttpRequest()
// 初始化xhr对象,设置请求方式和请求的url
xhr.open("GET","http://www.baidu.com")
// 发送请求
xhr.send()
// 处理数据
xhr.onreadystatechange() = function(){
   
	// 判断服务器是否已经响应完毕
	if(xhr.readystate === 4){
   
		// 判断请求是否成功
		if(xhr.status === 200){
   
			console.log(xhr.status)  // 响应状态码
			console.log(xhr.statusText) // 响应状态文本
			console.log(xhr.getAllResponseHeaders()) //获取响应头
			console.
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值