|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
缺点:安全性不是太差了,还行,只要你充分利用系统自带的工具;唯一缺点就是执行效率慢,如何进行网站优化以后,效果会比较好。客户端和服务器通讯可接纳一种自界说协定。但是,SOAP为此供应了一种天真的、易于扩大的和复杂的计划。利用XMLHTTP工具,客户端扫瞄器可哀求在服务器上实行一个ASP,并期待服务器的呼应以持续。因为原始客户端网页没有卸载,以是对客户来讲,全部历程都是通明的,并且速率一样平常都十分快。
上面经由过程几个树模网页来切磋该手艺。因为只要MicrosoftInternetExplorer5和更高的版本才撑持XMLHTTP,以是本章的例子要想一般事情,你的客户端必需满意这一最低请求。
思索到扩大性,我不但愿用一个查询字符串来传送SOAP哀求,由于这个字符串的长度限定在2048字节之内。相反,我但愿在HTTP标头中传送哀求,它不存在这方面的限定。清单A演示了怎样利用客户端JavaScript,经由过程HTTP标头向服务器发送基础信息。
SOAP的成绩
为了供应清单A的功效,要向服务器收回一个SOAP哀求。这类哀求由以下4部分构成:
信封包括全部哀求,并将包括的信息标识成一个SOAP哀求。
包Schema形貌了组成SOAP包的信息。
主体包括SOAP包。
包内含有和服务器哀求有关的实践信息。
因为SOAP文档也是一个XML文档,以是它具有和任何XML文档一样的限定。个中最主要的就是文档必需“良构”(Well-formed),这意味着两件事变。
起首,良构XML文档中的标志必需关闭。为演示这一点,最复杂的举措就是察看HTML和XHTML的区分。在XML文档中,一切标志都是容器标志。固然关于<span>等容器标志来讲,这不会形成成绩,但关于<hr>等非容器标志,却必需予以寄望。
有两个举措将非容器标志酿成容器标志。第一个和最分明的举措就是为每一个标志(比方<hr>)增加一个停止标志(比方</hr>)。另外一个举措是利用自关闭的XML标志;换言之,<hr></hr>可简写成<hr/>。还要记着,XML文档要辨别巨细写。以是,<hr></hr>是良构的,但<HR></hr>不是。
良构XML文档的第二个请求是必需用单引号或双引号来关闭属性。以是,固然<inputtype=textname=stuff/>是完整无效的HTML,但却不是良构的XHTML,必需改成<inputtype=textname=stuff/>。
SOAP文档还具有其他年夜多半XML文档都没有一个限定,也就是必需用一个XML架构(XMLSchema)来形貌SOAP文档。架构是文档布局和用XML编写的内容的一种笼统暗示,主旨是为XML剖析器界说和形貌文档的布局。
创立SOAP文档最复杂的体例就是毗连几个字符串。可是,如许做简单出错。相反,更好的做法是利用MSXMLXML文档工具模子(DOM)的办法来创立SOAP文档。以这类体例创立文档,可包管文档老是良构的。为此,我创立了6个JavaScript函数来封装MSXML的DOM工具,并创立一个SOAP文档来设置、猎取、呼应set或get会话变量哀求,向服务器发送一个SOAP文档,和剖析一个SOAP文档。清单B给出了这些函数;在实践的ASP页中,则经由过程一个include语句来援用它们。
xmlDOM、fault和collection函数次要由其他函数挪用。xmlDOM函数的感化是前往最新版本的MSXMLXMLDOM工具的一个实例。fault函数的感化是创立一个毛病SOAP文档,指动身生了一个毛病。collection则是一个类机关函数,它界说了一个JavaScript联系关系数组。
第4个函数是sessionSOAP,它也作为一个类机关函数利用,使开辟者不用体贴详细怎样创立一个SOAP文档来处置会话变量。第5个函数是sessionVariable,它处置同服务器交互所需的XMLHTTP逻辑。第6个函数是sessionParser,它也是一个类机关函数,感化是剖析一个会话变量SOAP文档,猎取会话变量的键/值对。清单C展现了详细怎样利用这些函数和类。
服务器真个情形
除sessionSOAP和sessionVariable,客户真个JavaScript函数和类也可在服务器端利用。之以是如许计划,是为了不分离编写客户端和服务器端函数来完成不异的义务。清单D显现了完全的SoapTestClient.asp页,它卖力设置及猎取会话变量。
本例完全演示了怎样利用XMLHTTP、MSXML和SOAP来会见及更新服务器端信息。还可针对其他目标来利用这些手艺,好比更新一个ASP网页而不举行惯例的卸载/重载操纵;因为削减了和服务器的通讯,以是它有助于加速使用程序的速率。
源代码保护方面其实现在考虑得没那么多了..NET也可以反编译.ASP写得复杂的话别人能看得懂的话.他也有能力自己写了.这方面担心的倒不太多.纵观现在网上可以下载的那些所谓BBS还有什么网站等等的源代码 |
|