分享:xmlhttp的get/post方式及相应Browser/Server端的处理

【Browser Side】
 
用xmlhttp控件,可以以get或者post方式向server请求页面。"Implement Script Callback Framework in ASP.NET 1.x"中,Elvin Cheng是这样写client side的javascript代码的:
 
if (pageUrl.length + postData.length + 1 > 2067) 
{
xmlRequest.open("POST", pageUrl, false);
xmlRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xmlRequest.send(postData);
}
else 

if (pageUrl.indexOf("?") != -1) 
xmlRequest.open("GET", pageUrl + "&" + postData, false);
else 
xmlRequest.open("GET", pageUrl + "?" + postData, false);
xmlRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xmlRequest.send();
}
 
【Server Side】
一、
以get方式,信息只能通过Query String传递,server端获取是简单的,从Request.QueryString里可以得到所有的Key和Value。
 
二、
以post,则稍稍复杂。
 
二之甲、如果post一个String(例如Query String太长的时候),那很简单,Request.Form就类似get方式中的Request.QueryString;
 
二之乙、如果post一个xml对象,那么需要:
 
'Check that something has been posted
If Request.ServerVariables("REQUEST_METHOD") = "POST" Then 
 
'Check that an XMLHTTP object has been posted
If Request.ServerVariables("CONTENT_TYPE") <> "application/x-www-form-urlencoded" Then 
 
'initialise an XML DOM object
Set oXMLDOM = Server.CreateObject("MSXML2.DOMDocument")
oXMLDOM.resolveExternals=False
oXMLDOM.validateOnParse=False
oXMLDOM.async=False
 
'load the request data into XML DOM
Call oXMLDOM.load(Request)
 
'Do something with XML DOM here
'***************************
 
End If
End If
 
 

 
相关msdn链接
 
http://support.microsoft.com/kb/290591/EN-US/
How To Submit Form Data by Using XMLHTTP or ServerXMLHTTP Object
 
http://support.microsoft.com/kb/290761/EN-US/
Frequently asked questions about ServerXMLHTTP 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值