toolkit中的独立控件

toolkit中的独立控件

ID:26356833

大小:851.50 KB

页数:38页

时间:2018-11-26

toolkit中的独立控件_第1页
toolkit中的独立控件_第2页
toolkit中的独立控件_第3页
toolkit中的独立控件_第4页
toolkit中的独立控件_第5页
资源描述:

《toolkit中的独立控件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、10第10章ASP.NETAJAXControlToolkit中的独立控件在第8章和第9章中,我们逐一学习了ASP.NETAJAXControlToolkit中用来“扩展”现有ASP.NET服务器端控件的表现样式或功能的扩展器控件。但ASP.NETAJAXControlToolkit中还提供了若干个另外一类的控件,这些控件并不依赖于现有的ASP.NET控件,也就是说,它们并不是设计为用来“扩展”现有的某个控件的,而是作为独立的控件提供。这类控件中没有了扩展器控件的TargetControlID属性,它们与现有的ASP.NET内建控件平起平坐,但绝大多数

2、都增添了丰富的客户端Ajax功能。在本章中,我就将介绍ASP.NETAJAXControlToolkit中这一类独立控件的使用方法。本章对每一个控件的介绍依然会采用与前两章相同的讲述方式,即分为应用场景、声明语法和常用属性、示例程序、常见问题以及使用技巧四个部分,让你不但知道如何使用,且清楚该在什么场景中使用。10.1 NoBot:拒绝机器人程序NoBot控件可以为页面中的表单提供类似CAPTCHA.CAPTCHA即CompletelyAutomatedPublicTuringTesttoTellComputersandHumansApart(全自动的

3、公开图灵测试),其目的是让计算机生成区分计算机和人类的程序算法,这种程序必须能够生成并评价出人类能很容易通过但计算机却难以通过的测试。目前常见的验证图片等都属于CAPTCHA。若想了解更多,请访问TheCAPTCHAProject网站:http://www.captcha.net/。而却无需任何用户操作的验证,以阻止机器人程序自动提交垃圾信息。10.1.1 应用场景网络上的垃圾信息似乎无处不在。从前是垃圾邮件、广告等,而现在,这些无孔不入的垃圾信息发布者又盯上了因特网上的各大网站。各种机器人程序(Bot)应运而生,它们可以自动在网络上爬行并寻找带有评论

4、或留言功能的页面,随即自动填写表单并提交,其提交垃圾信息的数量和质量更是让传统的手工发布者自愧不如。管理者往往一夜之间发现自己的网站下已经多了成千上万条广告,不但让真正有用的信息淹没于其中,更是让网站在性能上不堪重负。www.docin.com由此,很多解决方法应运而生,其中最著名的当属各种验证图片了。这种验证图片中的文字由计算机随机生成,并尽其所能地对其进行扭曲、变形、修饰、模糊,最终要达到的目的是只有聪明的人类才能够分析出其中的内容(如图10-1所示),而当前水平的计算机却只能够望“图”兴叹。然后将用户对这幅图片的识别文本随表单一起发送至服务器。这

5、样,服务器即可通过检查客户端输入的识别文字的正确与否来判断这是否是人类所为,也就达到了区分机器人程序和人类的目的。图10-1极其复杂的验证图片目前为止,这种做法非常有效,因为计算机图像处理能力的发展还不足以完全正确地识别出如此复杂的图片中的文字。不过这样做的缺点也很明显——麻烦!每次提交一次表单都需要用户仔细睁大双眼分辨验证图像中的内容,并且输入一串毫无意义、没有任何连贯性的字符,真的是一种痛苦!而且,对于视力不便的残障人士来说,这种验证图片更是将其拒之门外。于是,某些网站提供了另外一种可选项,即对于视力不便的残障人士,可以选择听一段朗读,并输入其中读

6、过的字母,通过声音的方式来分辨人类和计算机,例如Hotmail的注册页面,如图10-2所示。图10-2以识别声音的方式来分辨人类和计算机这样似乎考虑得很周全了……不过,如果某个用户不懂得英文,那岂不还是不能使用吗?世界上有这么多种语言,难道要提供每种语言的版本?而且,即使提供了所有语言的版本,对于“麻烦”这个致命的问题,也仍旧是无法解决啊!有没有一种无需用户操作的,对用户完全透明的验证机器人程序的解决方法呢?ASP.NETAJAXControlToolkit中提供的NoBot控件即提供了这样一种相对来说比较折中的解决方案。www.docin.com10

7、.1.2 声明语法以及常用属性NoBot控件可以通过如下4种方式较为准确地判断出进行当前操作的是否为人类:q让客户端浏览器执行一段JavaScript,并判断其执行结果。机器人程序一般只是取得HTTP流的内容,对其分析并填写其中表单之后即提交,这个过程中并不包含对浏览器功能的使用,也就更不会解析并运行页面中的JavaScript得到正确的运行结果。且这段JavaScript既可以是一段简单的纯数学运算,例如123*4455=?,也可以是一些非常复杂的DOM操作,例如动态创建一个

,并返回它的位置等。这样即强迫该程序只能够在浏览器中使用,大多数机

8、器人程序显然对此等计算无力回天。q判断客户端是否保存了本次会话状态。一般来讲,只有浏览器才会对

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。