ajax是一种什么技术(为什么vue不使用ajax)

admin3年前PHP教程26
ajax是一种什么技术

ajax是一种用来改善用户体会的技术,其本质是使用浏览器提供的一个特别的目标(XMLHttpRequest,也可称之为ajax目标)向服务器发送异步恳求。服务器使用这些数据对当时页面做部分更新。整个过程,页面无改写,不打断用户的操作。
注: 异步恳求:发送恳求的一起,浏览器不会销毁当时页面,用户任然可以对当时页面做其他操作。
怎么取得ajax目标?
区别浏览器
function getXhr() {
var xhr = null;
if(window.XMLHttpRequest){
//非ie浏览器
xhr = new XMLHttpRequest();
}else{
//ie浏览器
xhr = new ActionXObject(“Microsoft.XMLHttp”);
}
return xhr;
}
ajax目标的几个重要的特点
a.onreadystatechange:用来绑定一个事情处理函数,用来处理readystatechange事情。
注:当ajax目标得readystate特点值发生了任何改动(比如从0变成了1),就会产生readystatechange事情。
b.readyState:有5个值(0,1,2,3,4),表示ajax目标与服务器通讯的状态。其中,当值为4时,表示ajax目标已经取得了服务器回来得一切得数据。
c.responseText:取得服务器回来得文本数据。
d.responseXML:取得服务器回来得xml数据。
e.status:取得状态码。 (500,404,200(正常运行),302(重定向)。。。)
编程过程(不固定)
step1:取得ajax目标。
比如: var xhr = getXhr();
step2:发送恳求。
a、发送get恳求
(1) 翻开: xhr.open(‘get’,’check_uname.do?uname=tom’,true);
check_uname.do(地址):需要是事先在servlet写好接收恳求的方法 ,如果有参数加在恳求地址的后边用问号离隔,参数之间用&离隔
true:异步的,发送恳求的一起,浏览器不会销毁当时页面,用户任然可以对当时页面做其他操作。
false:同步的,几乎不用了。发送恳求时,浏览器会确定当时页面,用户不能够对当时页面做其他操作。
(2) xhr.onreadystatechange=f1; (f1:事情处理函数)
(3) 发送:(ajax把恳求数据打包发送) xhr.send(null);
b、发送post恳求
(1). xhr.open(‘post’)
step3:编写服务器端的程序(servlet)。
注:一般不需要回来完好的页面,只需要回来部分数据(文本)。
step4:编写事情处理函数。
function f1(){
//先取得服务器回来得数据
if(xhr.readyState == 4 && xhr.status ==200){
var txt = xhr.responseText;
//使用这些数据更新页面

}}


为什么vue不使用ajax

ajax和axio本质上都是对原生XHR的封装。
ajax是jQuery封装使用的方法,通常和jQuery一起使用。
相较于ajax而言,axios作为数据请求及响应的Promise的实现版本,给vue提供了更符合最新ECMAscript特性,详细可以查看axios特性。
因此,vue更倾向用axios而不用ajax

免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

PHP解密支付宝小程序的加密数据、手机号的示例代码

1.小程序端代码示例my.getPhoneNumber({ success: (res) => { let encryptedData = res.response;&nbs...

php之深入理解架构布局讲解

本文基于《php 内核剖析》与 《php7底层设计与源码实现》所记笔记。对php内核的深入理解有助于我们对php的整体认识,对于业务层初期发展我们可以只了解基本语言的逻辑就可以写出符合业务的代码,但是...

PHP 生成器的使用详解

目录什么是生成器?生成器有什么用?生成器的应用返回空值以及中断返回键值对形式外部传递数据yield from 语法小惊喜生成器可以用count获取数量吗?使用生产器来获取斐波那契数列总结什么是生成器?...

美国站群服务器租赁要注意哪些事项

美国站群服务器租赁要注意哪些事项?1、美国站群服务器技术服务美国站群服务器提供商一般都会标榜自己是7x24小时服务,大家可以在晚上找个时段往打个电话过往或者找一下他们的技术qq和提交问题,查一下岗,如...

怎么判断江西GPU服务器哪个好

判断GPU服务器哪个好,需要考虑以下几个因素:GPU类型和数量:选择适合您工作负载需求的GPU类型和数量。例如,如果您需要进行深度学习任务,则NVIDIATeslaV100或A100GPU可能是最佳选...

php中array_pad()函数用法及实例

1、array_pad($array,$size,$value)函数可以将某个键值$value插入到数组$array中,从而将数组填补到指定的长度$size。($size参数可以理解为数组中元素的最终...