首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

ajax发送异步请求四个步骤,深入理解ajax异步请求五个步骤(详细代码)

大家好,又见面了,我是你们朋友全栈君。 在前端工作中,经常会用到ajax,其实很多人只知道ajax是异步请求,不知道应该如何用它,它基本步骤有哪些,ajax请求过程是怎样?...AJAX(Asynchronous JavaScript and XML):是指一种创建交互式网页应用网页开发技术,通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。...尚未调用 open()方法。 1:启动。已经调用 open()方法,但尚未调用 send()方法。 2:发送。已经调用 send()方法,但尚未接收到响应。 3:接收。已经接收到部分响应数据。...已经接收到全部响应数据,而且已经可以在客户端使用了。 只有在XMLHttpRequest对象完成了以上5个步骤之后,才可以获取从服务器端返回数据。...404:访问资源不存在 总结:以上介绍了Ajax请求五个步骤以及详细代码 ,没有接触过得朋友可能看起来比较困难,没关系,看了以后,多去动手敲敲,慢慢就懂了,希望可以帮助到你!

1.6K40
您找到你想要的搜索结果了吗?
是的
没有找到

第107天:Ajax 实现简单登录效果

对象,指定请求方式,请求地址 6 // 五个参数 7 // ①. GET 方式 8 // ②....当接收到服务器发回相应信息,如何处理数据 19 // onreadystatechange 准备状态改变 20 ajaxObj.onreadystatechange = function()...否则会报错 1 载入状态:对 XMLHttpRequest 对象进行初始化,就是调用 open 方法,为请求做设置,并且调用 send() 方法向服务器发送请求,1 就代表正在向服务器发送请求 2 载入完成...即根据服务器端响应头部返回MIME类型,把数据转换成能通过responseBody、responseText或responseXML属性存取格式,为在客户端调用作好准备。状态3表示正在解析数据。...4 完成:此阶段确认全部数据都已经解析为客户端可用格式,解析已经完成,值为4表示数据解析完毕,可以通过XMLHttpRequest对象相应属性取得数据。

91220

重走Ajax之路1

重走Ajax之路(一) 复习篇。现在做项目请求这块都是用axios,但是还是不能忘本。...插一嘴:Ajax 名字中包含 XML,但是这并不意味着并不代表格式一定是XML。实际上,感觉JSON更香。 Ajax 使用步骤(异步) Ajax 使用主要分为 4 步。 1....创建 XHR 对象 AJAX 关键就是XMLHttpRequest对象(XHR对象)。所以第一步,首先就是创建XHR对象。 const xhr = new XMLHttpRequest(); 2....方法,还没调用send方法 2(已发送):已经调用send方法,还没有收到响应 3(接收中):已经接收到部分响应了 4(完成):已经接收到全部响应了 实际上,我们这里只需要状态为 4 ,即已经接收到全部响应了...绑定 load 事件 上面我们用是绑定readystatechanges事件,再通过判断readyState属性为 4 来判断响应是否接收完成。

36510

AJAX

创建AJAX对象 发出HTTP请求 接收服务器传回数据 更新网页数据 概括起来,就是一句话,AJAX通过原生XMLHttpRequest对象发出HTTP请求,得到服务器返回数据后,再进行处理。...而通过使用ajax可以在后台与服务器进行少量数据交换, 可以使网页实现异步更新。这意味着可以在不重新加载整个网页情况下,对网页某部分进行更新。...2:表示send方法已调用,数据已发送,并且服务器接收到了请求。 3:表示服务器正在传输数据。 4:表示数据传输完成。...可通过对该属性赋值来指定接收数据类型,默认为字符串,有如下几种数据类型: text:以字符串形式接收数据; json:以json对象形式接收数据; blob:blob对象; ArrayBuffer...对象 data = JSON.parse(data); responseXML返回从服务器接收到Document对象,该属性为只读。

2.2K50

web跨域解决方案

它们是:js脚本,css样式文件,图片,像淘宝等大型网站,肯定会将这些静态资源放入cdn中,然后在页面上连 ,如下所示,所以它们是可以链接访问到不同源资源。...ajax核心是通过XmlHttpRequest获取非本页内容,而jsonp核心则是动态添加标签来调用服务器提供js脚本。...服务器方面 服务器端对于CORS支持,主要就是通过设置Access-Control-Allow-Origin来进行。如果浏览器检测到相应设置,就可以允许Ajax进行跨域访问。...或ActiveX支持;并且在请求完毕后可以通过调用callback方式回传结果。      ...JSONP缺点则是:它只支持GET请求而不支持POST等其它类型HTTP请求;它只支持跨域HTTP请求这种情况,不能解决不同域两个页面之间如何进行JavaScript调用问题。

2.7K100

AJAX基础知识与简单操作示例

AJAX两个主要功能使您可以执行以下操作: 向服务器发出请求,而无需重新加载页面 从服务器接收和处理数据 步骤1 –如何发出HTTP请求 为了使用JavaScript向服务器发出HTTP请求,您需要一个具有必要功能对象实例...在此阶段,您需要通过设置onreadystatechange对象属性并在请求更改状态时调用该函数后命名,来告诉XMLHttp请求对象哪个JavaScript函数将处理响应,如下所示: httpRequest.onreadystatechange...(){ // Process the server response here. }; 接下来,在声明收到响应后会发生什么之后,您需要通过调用HTTP请求对象open()和send()方法来实际发出请求...一个常见陷阱是通过访问网站domain.tld,但尝试使用来调用页面www.domain.tld。如果您确实需要将请求发送到另一个域,请参阅HTTP访问控制(CORS)。...可能代码在W3C上列出。在以下示例中,我们通过检查200 OK响应代码来区分AJAX调用成功与否。

1.5K20

异步编程Ajax详解,并对其进行封装整理

('get', 'example.php', 'true') 光调用了 open() 方法还不够,它只是创建了一个请求,但还没有发送请求,因此我们还要调用xhr对象另一个方法,即 send() 方法...,这就可以通过上面表格中 readyState 属性来判断了 readyState 属性一共有5个值,分别表示不同请求响应阶段: 0: 还未创建请求,即未调用 open() 方法 1: 已调用 open...() 方法,但未发送 send() 方法 2: 已调用 send() 方法,但未接收到响应 3: 已接收到部分响应 4: 已接收到全部响应 同时,xhr对象可以绑定一个 readystatechange...这段代码是发送了一个 get 请求,地址为 example.php,携带参数有 query 值为 4 、em 值为 0,所接收返回数据类型为 json,请求为异步请求 特别的是,该方法回调函数是通过...,以及如何进行不同源间相互访问 了解过同源策略以后,我们来看看如何Ajax不受同源策略限制而成功发送请求。

1.6K20

ajax跨域基本流程

创建ajax过程一般如下: 创建XMLHttpRequest对象,也就是创建一个异步调用对象;判断XHR对象属性;创建一个新HTTP请求,并指定该HTTP请求方法、URL及验证信息;设置响应HTTP...GET请求不需要参数,POST请求需要把body部分以字符串或者FormData对象传进去。 跨域安全限制 因为浏览器“同源策略”,协议、域名、端口号若有一个不同,则不能访问。...2.1 CORS CORS(Cross-Origin Resource Sharing,跨源资源共享)是W3C一个草案,定义了在必须访问跨域资源时,浏览器与服务器应该如何沟通。...服务器端对于CORS支持,主要就是通过设置Access-Control-Allow-Origin来进行。如果浏览器检测到相应设置,就可以允许Ajax进行跨域访问。...通过图像Ping,浏览器得不到任何具体数据,但通过侦听load和error事件,它能知道响应是什么时候收到。 来看下面的例子。

87510

高级前端:详解手写原生Ajax实现

('get', 'example.php', 'true') 光调用了 open() 方法还不够,它只是创建了一个请求,但还没有发送请求,因此我们还要调用xhr对象另一个方法,即 send() 方法...,这就可以通过上面表格中 readyState 属性来判断了 readyState 属性一共有5个值,分别表示不同请求响应阶段: 0: 还未创建请求,即未调用 open() 方法 1: 已调用 open...() 方法,但未发送 send() 方法 2: 已调用 send() 方法,但未接收到响应 3: 已接收到部分响应 4: 已接收到全部响应 同时,xhr对象可以绑定一个 readystatechange...这段代码是发送了一个 get 请求,地址为 example.php,携带参数有 query 值为 4 、em 值为 0,所接收返回数据类型为 json,请求为异步请求 特别的是,该方法回调函数是通过...,以及如何进行不同源间相互访问 了解过同源策略以后,我们来看看如何Ajax不受同源策略限制而成功发送请求。

1.6K20

全面分析前端网络请求方式

替代者 axios、request等众多开源库 三、关于网络请求疑问 Ajax出现解决了什么问题 原生 Ajax如何使用 jQuery网络请求方式 fetch用法以及坑点 如何正确使用 fetch...| "json"| response 是一个 JavaScript 对象。这个对象通过将接收到数据类型视为 JSON解析得到。...六、jQuery对Ajax封装 在很长一段时间里,人们使用 jQuery提供 ajax封装进行网络请求,包括 $.ajax、$.get、$.post等,这几个方法放到现在,我依然觉得很实用。...可以发现,调用 reject有三种可能: 1.请求超时 2.请求失败 注意:当和服务器建立简介,并收到服务器异常状态码如 404、500等并不能触发 onerror。...,DELETE,OPTIONS"); next();}); jsonp script标签 src属性中链接可以访问跨域 js脚本,利用这个特性,服务端不再返回 JSON格式数据,而是返回一段调用某个函数

1.7K40

使用Promise封装一个 Ajax

调用下列任何其他方法之前,必须先调用该构造函数,或通过其他方式间接得到一个 XMLHttpRequest 对象。...XMLHttpRequest.onreadystatechange 当 readyState 属性发生变化时调用 EventHandler。...这个对象通过将接收到数据类型视为 JSON 解析得到。 "text" response 是包含在 DOMString 对象文本。...使用此响应类型时,响应中值仅在 progress 事件处理程序中可用,并且只包含上一次响应 progress 事件以后收到数据,而不是自请求发送以来收到所有数据。...在 progress 事件处理时访问 response 将返回到目前为止收到数据。在 progress 事件处理程序之外访问, response值会始终为 null 。

1.9K11

AJAX常见面试题(修订版)

传统web前端与后端交互中,浏览器直接访问TomcatServlet来获取数据。Servlet通过转发把数据发送给浏览器。...是可选 setRequestHeader(String header,String value):设置消息头(使用post方式才会使用到,get方法并不需要调用该方法) xmlhttp.setRequestHeader...如何解决跨域问题? 理解跨域概念:协议、域名、端口都相同才同域,否则都是跨域 出于安全考虑,服务器不允许ajax跨域获取数据,但是可以跨域获取文件内容。...所以基于这一点,可以动态创建script标签,使用标签src属性访问js文件形式获取js脚本,并且这个js脚本中内容是函数调用,该函数调用参数是服务器返回数据,为了获取这里参数数据,需要事先在页面中定义回调函数...,在回调函数中处理服务器返回数据,【JSONP】 在后端上配置可跨域【CORS方式】 前端ajax请求是本地接口,本地接口接收到请求后向实际接口请求数据,然后再将信息返回给前端【代理方式】 AJAX

79320

AJAX 与跨域通信(一):AJAX

2.XMLHttpRequest 对象 AJAX 核心实现依靠是浏览器提供 XMLHttpRequest 对象。...可以看作是一个构造函数,由此我们可以通过 const xhr = new XMLHttpRequest() 创建一个 XML 对象实例,该实例有以下方法: open():准备启动一个 AJAX 请求;...“请求”/“响应”过程的当前活动阶段 3.AJAX 请求 3.1 创建 XML 对象实例: const xhr = new XMLHttpRequest(); 3.2 准备请求 xhr.open('get...这里就用到前面讲过 xhr.readyState 属性,readyState 会随着 AJAX 进程而不断变化,我们可以通过 onreadystatechange() 去监听它变化,进而判断何时收到服务器响应结果...一旦调用这个方法,xhr 就会停止触发事件,而且也不再允许访问任何与响应相关对象属性。在终止请求之后,不要忘了对 xhr 对象解引用。

84020

AJAX

(XMLHttpRequest)对象已经创建,但还没有调用open()方法。...1 - (载入/正在发送请求)    对XMLHttpRequest对象进行初始化,即调用open()方法,根据参数(method,url,true),完成对象状态设置。...即根据服务器端响应头部返回MIME类型把数据转换成能通过responseBody、responseText或responseXML属性存取格式,为在客户端调用作好准备。...值为4表示数据解析完毕,可以通过XMLHttpRequest对象相应属性取得数据 //ajax常用status 1**:请求收到,继续处理 2**:操作成功收到,分析、接受 3**:完成此请求必须进一步处理...GET请求 300——请求资源可在多处得到 301——删除请求数据 302——在其他地址发现了请求数据 303——建议客户访问其他URL或访问方式 304——客户端已经执行了GET,但文件未变化 305

54540

Ajax学习笔记

你要告诉XMLHttp请求对象是由哪一个js函数处理响应,在设置了对象 onreadystatechange属性后给他命名,当请求状态改变时调用函数。.../ Process the server response here. }; 接下来,声明当你接到响应后要做什么,要发送一个实际请求,通过调用HTTP请求对象 open() 和 send() 方法,...一个容易犯错误是企图通过 domain.tld 访问网站, 而不是使用 www.domain.tld。 第三个参数是可选,用于设置请求是否是异步。...首先,函数要检查请求状态。可以通过检查返回状态码 200 OK 来判断AJAX是否成功 if (httpRequest.status === 200) { // Perfect!...这里向服务器跨域发送,发现在浏览器会报错 但服务器依旧是收到了来自客户端数据 0x04 小结 Ajax在异步处理中占据着举足轻重地位,向在XSS中可向自己服务器发送相关数据等等。

35110

使用AJAX获取Django后端数据

让我们看一下如何通过获取发出GET和POST请求,以在视图和模板之间传递JSON数据。 GET请求 通过获取发出GET请求 通过向其提供视图URL和适当headers参数来进行获取GET请求。...在视图中处理GET请求 我们需要一个视图来处理来自fetch调用AJAX请求。...如果AJAX请求是通过与后端其他位置相同模板提供,我们可以使用默认值“ same-origin”。这意味着,如果所请求URL与提取调用来自同一站点,则将在请求中发送用户凭据。...结果是我们通过提取发送数据字典。现在,我们可以通过其键访问数据。 一旦获得了请求中数据,我们就可以执行用户希望启动AJAX请求操作。这可能是创建模型新实例或更新现有实例。...如果尝试通过直接在浏览器中键入URL来访问此视图,则会收到错误消息。可以向视图中添加其他逻辑(例如重定向),以防止用户尝试在没有AJAX请求情况下访问视图时看到错误。

7.5K40

AJAX常见面试题(修订版)

AJAX应用和传统Web应用有什么不同? 传统web前端与后端交互中,浏览器直接访问TomcatServlet来获取数据。Servlet通过转发把数据发送给浏览器。...是可选 setRequestHeader(String header,String value):设置消息头(使用post方式才会使用到,get方法并不需要调用该方法) xmlhttp.setRequestHeader...如何解决跨域问题? 理解跨域概念:协议、域名、端口都相同才同域,否则都是跨域 出于安全考虑,服务器不允许ajax跨域获取数据,但是可以跨域获取文件内容。...所以基于这一点,可以动态创建script标签,使用标签src属性访问js文件形式获取js脚本,并且这个js脚本中内容是函数调用,该函数调用参数是服务器返回数据,为了获取这里参数数据,需要事先在页面中定义回调函数...,在回调函数中处理服务器返回数据,【JSONP】 在后端上配置可跨域【CORS方式】 前端ajax请求是本地接口,本地接口接收到请求后向实际接口请求数据,然后再将信息返回给前端【代理方式】 AJAX

71010
领券