经常听到某某语言运行于服务器端或客户端,可是不清楚到底是如何运行。于是上网搜了点资料,虽然还是比较疑惑,不过我想代码写多了就会明白的。
http://hi.baidu.com/%D0%A6%D2%F7%D0%A1%B1%F9%E9%D9/blog/item/5dc6283f53fbcdf2828b1393.html
1. 服务器端
常见的服务器端语言,php,jsp,asp
像我们普通浏览网页给予一中BS模式,其实他也只是一中统一于Browser(浏览器)的CS模式。我们的浏览器作为客户端,在点击链接或者输入地址时,向目的主机发送HTML,FTP等等服务请求,然后目的主机根据请求类型,请求内容给予响应。这种万变不离其宗的服务形式普遍存在于所有的网络通信模式中。
服务器脚本很简单,他是应于提交和处理表单,实现动态内容而出现的。想象一下一个中型网站大约有几千个链接地址,你总不能为每一个地址增加一个页面吧。于是服务器脚本从底层抽象出逻辑,把框架相同,但是内容不同的页面综合。最重要的是将逻辑处理与数据分开。于是,多个用户提交一个请求,大家享用了共同的逻辑处理方式,但是因为我提交的表单不一样,相应处理也会不同,于是返回内容也就不同
假设你有Baidu搜索框,然后输入关键字点击搜索答案。这就是一个提交表单动作。即便关键字不同,服务器的底层处理方法都是没有改变的,但是他返回的结果就如你的映射y = f(x),f是逻辑处理,x是用户表单,y是返回内容。
2. 客户端脚本,对应有 javascript,perl等等
其实客户端脚本从javascript才有着重强调过,尤其是ajax技术的出现,让客户端被重视起来。
很明显,服务器的数据都是存放在数据库中的,每一次查询都是需要数据库的链接,往往数据库链接比数据库查询更加费时。为了避免这种情况,网页设计者可以将简单的逻辑抽象出来,比如一次性读入整体的数据,然后将数据存入客户端(浏览器)的进程当中,这样下次就不用重新建立链接,我可以从自己机子上得到数据。根本不需要服务器频繁通信。
客户端脚本的目的很明显,既避免了重复冗余的链接,有能缓解服务器的压力(你不用要求服务器多次查询数据库)。
3.区别
这样就很明显了,服务器脚本运行于服务器之上,你永远看不到服务器脚本的内容,得到的只有脚本解释器发回的HTML代码,浏览器对他照盘接收。客户端脚本脱离服务器运行,不直接执行数据库操作。他实现了客户端上的简单逻辑。Ajax技术让客户端脚本变的另类且强大,他让客户端语言将数据库操作封装起来,允许用户在一个界面实现完全分离的数据库操作请求。你可以查阅IBM的开发者社区,来了解Ajax技术内幕。通俗地总结:一般来说,如果一个函数需要与流星者进行直接的交互,那么它就只能在客户端使用。比如:Msgbox函数的作用是弹出信息对话框,需要浏览网页的人点击按钮。如果发现函数在服务端执行时语法和逻辑都正确却出错,那就是只能在客户端执行了。
4.用法
服务端脚本我作用"<% %>"括起来,所以ASP网页文件在服务器上执行的时候是不会执行这个标记以外的内容的。所以在写程序的时候千万要弄清楚不能搞混。而客户端为了让浏览器知道这是VBSCRIPT脚本语言,要用
<script language="程序语言">
VBScript 客户端脚本程序
</script>
服务端脚本是在ASP服务器上被执行的,而客户端脚本是由浏览器来执行的。
本文详细介绍了服务器端脚本(如PHP、JSP、ASP)和客户端脚本(如JavaScript、Perl)的工作原理及应用场景。服务器端脚本负责处理用户请求并生成动态内容,而客户端脚本则在用户的浏览器上运行,处理简单的逻辑和交互,减轻服务器负担。
2329

被折叠的 条评论
为什么被折叠?



