前端Ajax(一)

什么是AJAX呢?

Asynchronous Javascript & XML——WEB开发过程中的一种技术——异步发送&&请求数据————不需要重新刷新当前页面,能够保留当前的信息。——目前Json数据格式已经占据市场

 前端Ajax(一)

在图中可以看到,客户端通过js向服务端发送请求是需要一个XmlHttpRequest对象,

那么XmlHttpRequest对象是什么呢,他能够用来干什么呢,我在代码的请求的过程中需要她干什么?

下面我来解释一下XmlHttpRequest是对象类型的API——在浏览器环境下使用——用于客户端和服务端数据的传递和接收——用于请求XML数据(JSON,纯文本text

那么只有AJAX能够实现客户端与服务端的一个通信吗,下面我们来介绍一些其他的类似AJAX技术的一些技术/

有请他们隆重登场——jQuery(其实里面就是封装了AJAX技术)——下一位Axios(据说是非常好用的一种)——第三位Superagent——最后几位Fetch API——Prototype——Node HTTP,我只是进行简单的介绍,其他的,私下练习,我们主要讲的是AJAX

 

首先呢,我们先写 一个关于请求纯文本的页面

把自己电脑上的上的服务器打开,不论你使用的是什么服务器,功能都是类似的。

然后在自己服务器下写WEB代码的文件夹中新建HTMl文件,可以随意命名。我们下面就命名为AJAX吧。命名成功后,我们用自己电脑上的编译器打开,用什么编译器随意,我电脑上安装的是sublime。然后开心的开始敲代码吧///@

首先我们需要创建一个标签,用来创建DOM树,请求js

代码如下:

 前端Ajax(一)

接下来我们尝试一下方法二请求:

 前端Ajax(一)

浏览器中实现同样的效果,成功了啊!

接下来我们打印出状态码

首先说明一下,如果使用onload监听状态码的话,只会监听到423无法监听到,因为进入到onload以后,状态码已经是4了,不是4的话,进不到onload里面。

下面我们能讨论一下在onreadyStatechange中监听状态码的状况。

 前端Ajax(一)

显示出如下数字,即表示状态码打印成功!此时我们能够打印出来的数字是234

 前端Ajax(一)

那么什么是状态码呢?

我们来看一下:

readyState————状态码

0——————请求未初始化

1——————服务器连接已建立

2——————请求已接收

3——————请求处理中

4——————请求已完成,且相应已就绪

HTTP——————状态码

200——————服务器成功返回网页

404——————请求的网页不存在

503——————服务器暂时不可用

我们仅仅打印出来了234,那么01在哪里呢。据说:0表示的是请求未初始化,那么我们现在不可能得打0;那么1呢,

前端Ajax(一)

在代码中加入这行代码,我们就能够正常打印出1//@

为了网页能够正常显示,我们需要判断一下,readyState状态码和HTTP状态码;

如果readyState的状态码是4 && HTTP的状态码是200,那么说明页面可以正常显示。

一般的,网页在进行处理的 时候,会有一个转圈的效果,我们测试一下,此时的状态码 应该是3,运行的是onprogress方法;

我们的页面已经完成了模型,仅仅留下了显示页面,现在我们来显示页面内容:

我们需要定义一个标签,给她一个类||id,我们通过dom树获取到这个标签,然后将请求的内容通过innerHTML返回到页面中。

 前端Ajax(一)

 前端Ajax(一)

浏览器运行页面后,效果实现,完成!

Over!