js方式的异步请求

 1 有的企业要求你要会写,
 2     *1. 异步请求的get方式
 3         代码:
 4             //创建一个XmlHttpRequest请求
 5             function createXmlHttpRequest(){
 6                 //声明一个请求,并是设置为空
 7                 var xhr=null;
 8                 try{
 9                     //兼容IE浏览器的请求
10                     xhr=new ActiveXObject("microsoft.xmlhttp");
11                 }catch(e){
12                     try{
13                         //其他浏览器的请求对象
14                         xhr=new XmlHttpRequest();
15                     }catch(e){
16                         alert("你的浏览器太差!");
17                     }
18                 }
19                 //返回请求
20                 return xhr;
21             }
22
23             //创建异步get请求,在窗口的加载的时候执行函数
24             window.onload=function(){
25
26                 //界面元素的单击事件之后完成异步请求
27                 document.getElementById("").onclick=function(){
28                     //获取请求对象,局部依赖该对象
29                     var xhr=createXmlHttpRequest();
30                     //请求对象的get请求
31                     xhr.open("get",url);
32                     //请求对象发送数据为空
33                     xhr.send(null);
34                     //请求对象的请求完之后的分发的数据
35                     //请求对象的准备状态的改变事件之后执行函数
36                     xhr.onreadystatechange=function(){
37                         //请求对象的准备状态为4时,请求成功
38                         if(xhr.readyState==4){
39                             //请求状态为200或者304时请求成功
40                             if(xhr.status==200 || xhr.status==304){
41                                 //获取服务器相应过来的数据
42                                 var data=xhr.responseText;
43
44                                 alert(data);
45                             }
46                         }
47                     }
48
49                 }
50             }
51     *2. 异步请求的post方式
52         //1. 创建请求对象,同上,略
53
54         //2. 窗口加载的时候,创建异步请求
55         window.onload=function(){
56             //请求完成之后服务器响应的数据
59             xhr.onreadystatechange=function(){           //创建请求对象            var xhr=createXmlHttpRequest(); 
60                 //请求对象的准备状态为4时,响应成功
61                 if(xhr.readyState==4){
62                     //请求状态为200或者304时请求成功
63                     if(xhr.status==200 || xhr.status==304){
64                         //获取服务器相应过来的数据
65                         var data=xhr.responseText;
66
67                         alert(data);
68                     }
69                 }
70             }
71             //请求对象向服务器请求数据
72             xhr.open("post",url);
73             //设置请求体的数据编码方式
74             xhr.setRequestHeader("content-type","application/x-www-urlencoded");
75             //请求对象向服务器发送数据,parameter就是要提交的参数
76             xhr.send(parameter);
77
78         }
时间: 2024-11-10 01:02:52

js方式的异步请求的相关文章

Ajax:实现后台验证js实现get方式的异步请求,判断用户名是否重复

<%@ page contentType="text/html;charset=UTF-8" language="java" %><html> <head> <title>ajax</title> <script src="/ajax/js/jquery-3.3.1.min.js"></script> </head> <body> <

js实现post方式的异步请求

<%@ page contentType="text/html;charset=UTF-8" language="java" %><html> <head> <title>ajax</title> <script src="/ajax/js/jquery-3.3.1.min.js"></script> </head> <body> <

手动封装js原生XMLHttprequest异步请求

Code Object.extend =function(targetObj,fnJson){ //扩展方法,类似于jQuery的$.extend,可以扩展类的方法,也可以合并对象 for(var fnName in fnJson){ targetObj[fnName]=fnJson[fnName]; } return targetObj; }; HttpAjax = (function(){ function HttpAjax(options){ var settings={ type:'po

js实现所有异步请求全部加载完毕后,loading效果消失

在实际开发中,一定有情况是这样的,一个页面我们有多个地方请求了ajax,在这种情况下,我们要实现数据没来之前出现我们炫酷的loading效果,而且要等到所有的ajax都请求完毕后,才让我们的loading效果消失,那么问题来了,每个ajax请求数据的时间都是不确定的,我们这个loading效果结束的逻辑又应该放到哪里呢?就好比这样(伪代码模拟): console.log('loading效果图旋转中') var timer1 = setTimeout(() => { console.log('第

关于异步请求AJAX的详解

1,异步请求的方法步骤: 1,判断当前用户支持的浏览器类型 XMLHttpRequest:判断是否支持非IE浏览器,对应的创建方法:xmlhttp = new XMLHttpRequest(); window.ActiveXObject:判断是否支持IE浏览器,对应的创建方法:xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); 2,开辟连接创建路径 xmlhttp.open(参数一,参数二,参数三); 参数一:请求的方式get  post

关于异步请求AJAX的具体解释

1,异步请求的方法步骤: 1,推断当前用户支持的浏览器类型 XMLHttpRequest:推断是否支持非IE浏览器,相应的创建方法:xmlhttp?=?new?XMLHttpRequest(); window.ActiveXObject:推断是否支持IE浏览器,相应的创建方法:xmlhttp?=?new?ActiveXObject("Microsoft.XMLHTTP"); 2,开辟连接创建路径 xmlhttp.open(參数一,參数二,參数三); 參数一:请求的方式get??post

IOS开发使用NSURLConnection、NSURLSession、AFN、ASI四种方式实现HTTP请求

概括:HTTP请求可以使用NSURLConnection.NSURLSession.AFN.ASI等方式实现,其中又包括了get.post两种请求方式和同步.异步两种程序执行方式. NSURLConnection 1 get方式的同步请求 /** *  get同步请求 */ -(void) getSynch{ // 获取URL NSURL *url = [[NSURL alloc] initWithString:@"http://localhost:8070/MJServer/login?use

SpringBoot异步请求

何为异步请求 在Servlet 3.0之前,Servlet采用Thread-Per-Request的方式处理请求,即每一次Http请求都由某一个线程从头到尾负责处理.如果一个请求需要进行IO操作,比如访问数据库.调用第三方服务接口等,那么其所对应的线程将同步地等待**IO操作完成, 而IO操作是非常慢的,所以此时的线程并不能及时地释放回线程池以供后续使用,在并发量越来越大的情况下,这将带来严重的性能问题.其请求流程大致为: 而在Servlet3.0发布后,提供了一个新特性:异步处理请求.可以先释

SpringBoot中异步请求和异步调用(看这一篇就够了)

一.SpringBoot中异步请求的使用 1.异步请求与同步请求 特点: 可以先释放容器分配给请求的线程与相关资源,减轻系统负担,释放了容器所分配线程的请求,其响应将被延后,可以在耗时处理完成(例如长时间的运算)时再对客户端进行响应.一句话:增加了服务器对客户端请求的吞吐量(实际生产上我们用的比较少,如果并发请求量很大的情况下,我们会通过nginx把请求负载到集群服务的各个节点上来分摊请求压力,当然还可以通过消息队列来做请求的缓冲). 2.异步请求的实现 方式一:Servlet方式实现异步请求