中易网

ajax 中xmlhttpreq.open("get","url",true)中,这个URL是指什么路径,True和get是指什么?

答案:3  悬赏:50  
解决时间 2021-01-08 12:15
ajax 中xmlhttpreq.open("get","url",true)中,这个URL是指什么路径,True和get是指什么?
最佳答案
创建XMLHttpRequest 方法如下
XMLHttpRequest 类首先由Internet Explorer以ActiveX对象引入,被称为XMLHTTP。 后来Mozilla、Netscape、Safari 和其他浏览器也提供了XMLHttpRequest类,不过它们创建XMLHttpRequest类的方法不同。
对于Internet Explorer浏览器:
xmlhttp_request = new ActiveXObject("Msxml2.XMLHTTP.3.0"); //3.0或4.0, 5.0
xmlhttp_request = new ActiveXObject("Msxml2.XMLHTTP");
xmlhttp_request = new ActiveXObject("Microsoft.XMLHTTP");
由于在不同Internet Explorer浏览器中XMLHTTP版本可能不一致,为了更好的兼容不同版本的Internet Explorer浏览器,因此我们需要根据不同版本的Internet Explorer浏览器来创建XMLHttpRequest类,上面代码就是根据不同的Internet Explorer浏览器创建XMLHttpRequest类的方法。
对于Mozilla、Netscape、Safari等浏览器
创建XMLHttpRequest 方法如下:xmlhttp_request = new XMLHttpRequest();
如果服务器的响应没有XML mime-type header,某些Mozilla浏览器可能无法正常工作。 为了解决这个问题,如果服务器响应的header不是text/xml,可以调用其它方法修改该header。
xmlhttp_request = new XMLHttpRequest();
xmlhttp_request.overrideMimeType('text/xml');
在实际应用中,为了兼容多种不同版本的浏览器,一般将创建XMLHttpRequest类的方法写成如下形式:
try{
if( window.ActiveXObject ){
for( var i = 5; i; i-- ){
try{
if( i == 2 ){
xmlhttp_request = new ActiveXObject( "Microsoft.XMLHTTP" ); }
else{
xmlhttp_request = new ActiveXObject( "Msxml2.XMLHTTP." + i + ".0" );
xmlhttp_request.setRequestHeader("Content-Type","text/xml");
xmlhttp_request.setRequestHeader("Charset","gb2312"); }
break;}
catch(e){
xmlhttp_request = false; } } }
else if( window.XMLHttpRequest )
{ xmlhttp_request = new XMLHttpRequest();
if (xmlhttp_request.overrideMimeType)
{ xmlhttp_request.overrideMimeType('text/xml'); } } }
catch(e){ xmlhttp_request = false; }
发送请求了
可以调用HTTP请求类的open()和send()方法,如下所示:
xmlhttp_request.open('GET', URL, true);
xmlhttp_request.send(null);
open()的第一个参数是HTTP请求方式—GET,POST或任何服务器所支持的您想调用的方式。 按照HTTP规范,该参数要大写;否则,某些浏览器(如Firefox)可能无法处理请求。
第二个参数是请求页面的URL。
第三个参数设置请求是否为异步模式。如果是TRUE,JavaScript函数将继续执行,而不等待服务器响应。这就是"AJAX"中的"A"。
服务器的响应
这需要告诉HTTP请求对象用哪一个JavaScript函数处理这个响应。可以将对象的onreadystatechange属性设置为要使用的JavaScript的函数名,如下所示:
xmlhttp_request.onreadystatechange =FunctionName;
FunctionName是用JavaScript创建的函数名,注意不要写成FunctionName(),当然我们也可以直接将JavaScript代码创建在onreadystatechange之后,例如:
xmlhttp_request.onreadystatechange = function(){
// JavaScript代码段
};
首先要检查请求的状态。只有当一个完整的服务器响应已经收到了,函数才可以处理该响应。XMLHttpRequest 提供了readyState属性来对服务器响应进行判断。
readyState的取值如下:
0 (未初始化)
1 (正在装载)
2 (装载完毕)
3 (交互中)
4 (完成)
所以只有当readyState=4时,一个完整的服务器响应已经收到了,函数才可以处理该响应。具体代码如下:
if (http_request.readyState == 4) { // 收到完整的服务器响应 }
else { // 没有收到完整的服务器响应 }
当readyState=4时,一个完整的服务器响应已经收到了,接着,函数会检查HTTP服务器响应的状态值。完整的状态取值可参见W3C文档。当HTTP服务器响应的值为200时,表示状态正常。
处理从服务器得到的数据
有两种方式可以得到这些数据:
(1) 以文本字符串的方式返回服务器的响应
(2) 以XMLDocument对象方式返回响应
全部回答
URL指你要提交的请求路径
get指使用get方式提交
get是浏览器提交HTTP请求的方式。用的比较多的就是POST和GET了。剩下的还有update和delete。
true指的是xmlhttprequest的异步问题。true就表示异步请求(不刷新网页),如果是false就不异步。
url就是你用来处理Ajax请求的那个后台程序的地址。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
本人1996.12.20出生,能否参加2018年军考
如果一个男生只喝你一个人的水,说明什么
国肽产品是从哪提取的?
目前有哪些适合做实木家具的木材
如何看待迂腐的人
听说济南联浩机械厂家搬迁了,请问从济南汽车
批判戏子当道的名言
瑞士手工手表bswiss手表中文名
052312345是什么电话
买手机送的蚕丝被合算不
楼面和柱子可以一起浇倒吗
那个打字员什么的我交了350元现在要怎么办啊
现在孩子刚发育可以提前干预初潮到来吗
二十九想改姓名
占地面积怎么算?
推荐资讯
秘密被人知道了怎么办
科比有没有带过发带打过nba比赛
男的喝一碗酒女的就脱一件衣服韩国电影
GTA5怎么进入公共战局 指定人员进入公
我的排名在宜宾县1600左右,报了县二,可以读
高效缓释肥和生物有机肥能混合吗
罗源去尤溪有多少公里
可以放急冻吗
寻找英国歌手或组合
10分之9减去9分之1等于多少
石竹 的花语???
维语 妈妈怎么说
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?