ASP网页设计又是 VI6 SOM(一), to be continued....
缺点:安全性不是太差了,还行,只要你充分利用系统自带的工具;唯一缺点就是执行效率慢,如何进行网站优化以后,效果会比较好。这篇文章原本是用HTML写的,内里另有很多多少插图(vi6snapshot),惋惜...先贴在这儿,赶明儿再贴HTML版的。
==================================================================
VisualInterDev6.0中的ScriptObjectModel
本文必要读者具有以下手艺背景:
HTML(HyperTextMarkedLanguage)
DHTML(DynamicHTML)
DOM(DocumentObjectModel)
ASP(ActiveServerPage)
DTC(DesignTimeControl)
--------------------------------------------------------------------------------
汗青/Client-SideScripting/Server-SideScripting
WebSite在一入手下手呈现的时分,次要目标是为信息公布(InformationPublish)。换言之,一个WebServer更相似于一个文件服务器(FileServer)。WebSite是WebPage的汇合,每页WebPage都是利用HTML格局的纯文本。
为了完成更丰厚的显现功效,而且增添会见者与页面的交互功效,在扫瞄器端(Client-Side)呈现了DHTML手艺。DHTML并不是一个独自的产物或手艺,而是一系列手艺的汇合。它次要集成了:
CSS(CascadingStyleSheet)
DOM(DocumentObjectModel)
Client-SideScript(典范的是:Javascript)
别的,几近是一刹时,人们就不再满意于WebSite只做信息公布(InformationPublish)平台了。人们但愿用它来代替之前的Client/Server形式,也就是说做Web使用。这次要是在背景做文章,相干的手艺有:
CGI(CommonGatewayInterface)
ISAPI/NSAPI/WSAPI
ASP(ActiveServerPage)
在Windows平台上,思索到功能效力和编程周期的折中,人们常常选择的是ASP(ActiveServerPage)。ASP手艺是经由过程在服务器端(WebServerSide)注释实行Server-SideScript(一般利用VBScript编写),并有大概进一步伐用服务器端组件(Server-SideComponent),来终极完成扫瞄器/服务器(Browser/Server)三层Web使用形式。
--------------------------------------------------------------------------------
远程剧本编程手艺RemoteScripting
而在实践使用中,庞大的Web使用体系常常必要同时挪用客户剧本又挪用服务器剧本。客户剧本(Client-SideScript)用于完成用户界面──比方,为了静态改动Web页文本,对用户举措,好比双击作出反响,并实行诸如考证如许的面向客户的义务。客户剧本由扫瞄器注释实行,从而向用户供应了一种活泼的、反响敏捷的接口。而服务器剧本(Server-SideScript)是用来完成全部使用体系的贸易逻辑部分。好比对某个数据库的存取举措。
可是客户端和服务器端剧本是互斥的,即相互不成见。当某个页初次哀求时,服务器大概运转服务器剧本,并将页面传送给扫瞄器,然后扫瞄器就能够运转客户剧本。不外,假如该页上的服务器剧本有需要再次运转的话,那末必需将该页提交回服务器,服务器才能够无效地从头运转该页。保护页面中控件的形态和剧本中的变量大概必要一个庞大的剧本编程(scripting)历程,目标是在扫瞄器和服务器之间往返传送信息。这还会增添收集流量,下降Web使用的功能。
示例:
如图,在VisualInterDev6.0的编程情况中能够分明看到,DHTML编程完整是Client-SideScripting手艺。响应的,HTMLFormElement全体都是Client-SideObject。我们不成能在Client-SideScript中会见任何Server-SideObject,假如想会见,独一的办法是提交页面,利用Action属性往挪用ASP页面。
一种折中计划是远程剧本编程手艺(remotescripting)。该手艺同意你在客户剧本中写代码挪用某个ASP页中的办法(函数大概例程)。实践上,你能够象挪用当地例程那样挪用服务器剧本,不外它们仍旧运转在服务器上,并具有对服务器才能的一切存取权限。因为你从不必要分开以后页面,跑往挪用服务器剧本,因而页面形态很简单坚持。
Remotescripting是经由过程函数库来完成的,当你要挪用某个服务器办法时,能够间接从客户端剧本中挪用这个函数。挪用哀求会被传送到扫瞄器中的一个代办署理历程中,该历程在扫瞄器中异步运转,今朝,该代办署理是作为一个Javaapplet来完成的。该代办署理历程发送一个哀求到包括你所挪用办法的ASP页的服务器中。
尔后,服务器加载ASP页,并且该ASP页上的一个特别例程将你的哀求调剂到所需的函数。假如你所挪用的函数有前往值,那末该值即被发送回代办署理历程,代办署理历程将之包装为一个工具------一个挪用工具(CallObject)------该工具的属性中包括了很多有效的信息,个中包括函数前往值。
为了完成remotescripting,除你本人的客户端(.htm)文件和服务器(.asp)文件外,还必要上面的文件:
Rs.htm包括了一系列函数,其目标是在客户真个.htm文件中初始化remotescripting、实行远程历程、反省远程挪用的形态,和取得函数的了局。
Rs.asp包括了一系列函数,其目标是在服务器真个.asp文件中初始化服务器真个remotescripting,和在ASP页中调剂到所需的函数。
Rsproxy.class包括Javaapplet的Java类文件(工具代码),其目标是在客户端和服务器页之间举行通讯。
为了使得用remotescripting挪用ASP页上的函数更便利一些,您能够在客户剧本中创立工具援用,援用具有服务器端函数的ASP页面。如许,你就能够利用尺度的object.method()语法往挪用在服务器ASP页面中表露出的函数了。
--------------------------------------------------------------------------------
VisualInterDev6.0PageObject
读到这里,人人也许想到在VisualInterDev6.0中,RemoteScripting是怎样便利地完成了。VI6利用PageObjectDTC帮我们封装了大批内容,我们所需做的就是起首在ASP页面中写一段函数,然后利用PageObject将其表露出来。在前台的HTML页面中也到场PageObject,帮我们援用(Reference)ASP页面,然后就能够在Client-SideScript中利用背景ASP页面中的函数了。这类利用和之前的经由过程SubmitFormtoASP的办法分歧,不必分开HTML页面。
Server-Side
创立Server-SideASP页面。
在ASP页面中写一段函数。
然后利用PageObject将其表露出来。Client-Side
创立Client-Side页面。
利用PageObject援用必要的ASP页面。
然后就能够在Client-SideScript挪用写好的Server-Side函数了。
使人乐意的是,函数的前往值经由过程CallObject的属性callobject.return_value来传送,能够是数组!
</p>无法实现跨操作系统的应用。当然这也是微软的理由之一,只有这样才能发挥ASP最佳的能力。可是我却认为正是Windows限制了ASP,ASP的概念本就是为一个能让系统运行于一个大的多样化环境而设计的; 代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。 如何更好的使自己的东西看上去很不错等等。其实这些都不是问题的实质,我们可以在实践中不断提升自己,不断充实自己。 下载一个源代码,然后再下载一个VBScript帮助,在源代码中遇到不认识的函数或是其他什么程序,都可以查帮助进行解决,这样学习效率很高。 另外因为asp需要使用组件,所以了解一点组件的知识(ADODB也是组件) 我们必须明确一个大方向,不要只是停留在因为学而去学,我们应有方向应有目标. ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象,这就明显产生以下几个问题: 交流是必要的,不管是生活还是学习我们都要试着去交流,通过交流我们可以学到很多我们自己本身所没有的知识,可以分享别人的经验甚至经历。 Response:从字面上讲是“响应”,因此这个是服务端向客户端发送东西的,例如Response.Write 从事这个行业,那么你可以学ASP语言,简单快速上手,熟练dreamweav排版,写asp代码,熟练photoshop处理图片,打好基础就行了
页:
[1]