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

athossmth 2005-02-16 02:27:35



【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
...全文
279 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
adiks 2005-04-13
  • 打赏
  • 举报
回复
o
clkun 2005-03-25
  • 打赏
  • 举报
回复
不知道什么意思。楼主有空详细举个应用例子。实在不更其中的好处。有空为我们加油写点实际应用例子。支持你!
zjcxc 2005-03-17
  • 打赏
  • 举报
回复
学习
2004v2004 2005-03-03
  • 打赏
  • 举报
回复
gu1dai 2005-03-01
  • 打赏
  • 举报
回复
jueban9818 2005-02-19
  • 打赏
  • 举报
回复
mark
zb1999 2005-02-17
  • 打赏
  • 举报
回复
学习
ygjwjj 2005-02-16
  • 打赏
  • 举报
回复

8,906

社区成员

发帖
与我相关
我的任务
社区描述
XML/XSL相关问题讨论专区
社区管理员
  • XML/XSL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧