- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实现最基本AJAX框架方法
实现最基本AJAX框架方法
【摘要】 AJAX即“Asynchronous JavaScript and XML”(异步JavaScript和XML),AJAX并非缩写词,而是由Jesse James Gaiiett创造的名词,是指一种创建交互式网页应用的网页开发技术。
【关键词】 Ajax;ASP.NET2.0;Net Framwork;客户回调
AJAX应用可以仅向服务器发送并取回必需的数据,使用SOAP或其它一些基于XML的web service接口,并在客户端采用JavaScript处理来自服务器的响应。在服务器和浏览器之间交换的数据大量减少,结果就能看到响应更快的应用。同时很多的处理工作可以在发出请求的客户端机器上完成,所以Web服务器的处理时间也减少了。使用Ajax后,就能在不更新整个页面的前提下维护数据。
一、ASP.NET 2.0的客户回调功能
Asp.Net 2.0有了许多新特性,客户端回调就是其中之一。客户端回调允许我们不经过回发而调用服务器端的方法,与AJAX提供的功能是一致的,但是不如AJAX灵活,AJAX可以自定义调用的方法,2.0自带的回调功能却不行。要使用客户端回调功能必须实现System.Web.UI.IcallbackEventHandler接口。(本文代码环境:Window Xp sp2 + .Net FramwWork 2.0.50727 + C#语言)。
二、 AJAX介绍
AJAX并不是一种新的技术,而是一些已有技术的有机结合,主要包括:XmlHttp、Reflect。一个AJAX框架基本上包括:一个自定义的HttpHandler、一段JavaScript代码。
三、AJAX运行机制
以前使用XmlHttp实现无刷新页面的时候,是用XmlHttp来请求一个隐藏的页面,使用(Asp/Asp.Net)自带的HttpHandler。在AJAX中,我们请求的也是一个隐藏的页面,不同的是这个页面的HttpHandler是由我们自己来实现。
四、打造自己的AJAX
(1)首先我们要实现一个Http处理程序(HttpHandler)来响应客户端的请求:实现自定义的HttpHandler需要实现IHttpHandler接口。该接口包含一个属性和一个方法:
bool IHttpHandler.IsReusable { get { return true; } }
void IHttpHandler.ProcessRequest(HttpContext context)
{
context.Response.Clear(); //获取要调用的方法
string methodName = context.Request.QueryString[me]; //获取程序集信息。
//Czhenq.AJAX.Class1.Dencode是自定义的字符串编码方法
string AssemblyName =
Czhenq.AJAX.Class1.Dencode(context.Request.QueryString[as]);
//获取方法的参数
??? string Arguments = context.Request.QueryString[ar]; //开始调用方法
Type type = Type.GetType(AssemblyName);
MethodInfo method = type.GetMethod(methodName,
BindingFlags.NonPublic |
BindingFlags.Public | BindingFlags.Static | BindingFlags.Instance);
if (method != null) { //参数使用,分隔
string[] args = Arguments.Split(,.ToCharArray());
ParameterInfo[] paras = method.GetParameters();
object[] argument = new object[paras.Length];
for (int i = 0; i 0) args = args.substr(0,args.length-1);
var xmlhttp = new ActiveXObject(Microsoft.XMLHTTP);
url = AJAX/AJAX.czhenq?as= + AssemblyName + me= + MethodName +ar=+
您可能关注的文档
最近下载
- 2024年中国电线电缆白皮书.pdf VIP
- 人教版小学一年级数学口算题卡(可打印).pdf VIP
- 2023年西北师范大学软件工程专业《操作系统》科目期末试卷B(有答案).docx VIP
- 广东省茂名市2021-2022学年四年级下学期期末数学试卷.docx VIP
- 烟气在线监测技术培训:监测仪器原理与使用方法.pptx
- 2025年高考语文试题全国1卷(含答案解析) .pdf VIP
- 医疗器械软件可追溯性分析管理规定.doc VIP
- 垃圾清运、处置作业方案(3篇) .docx VIP
- 2023年西北师范大学软件工程专业《操作系统》科目期末试卷A(有答案).docx VIP
- 24 安全教育培训一人一档.pdf VIP
文档评论(0)