随着Internet/Intranet应用普及,越来越多的用户在设计上采用Client/Server结构,建立自己的Internet/Intranet应用。客户端程序负责向Web服务器发送请求,并负责从Web服务器接受和解释显示超文本。如果要生成动态、 交互式Web页面,就必须通过公共网关接口(CGI),CGI程序可采用Perl,C++,JavaScript等编写,而目前流行的方法是采用Java或JavaScript。
一、JavaScript简介
JavaScript是个脚本编程语言,好处在于它既适用于客户端应用,又可用于服务器端应用开发。例如,在客户端它可用于编写Web浏览器程序,而在服务器中,它可用于编写处理Web浏览器提交的信息,并相应地更新浏览器显示的Web服务器程序。尽管JavaScript能满足一些服务器方编程需求,但还需要一些服务器方程序来支持更高级的Web应用程序。例如,访问数据库或进行特殊处理。为此,Netscape公司专门提供了开发JavaScript服务器程序的集成环境Livewire。
二、Livewire简介
Livewire是个WEB应用程序开发环境,在Windows NT4.0系统下安装Netscape Fast track就可使用它。Livewire可用来开发浏览器和服务器方的Web应用程序。从而在服务器方可替代原来需要的CGI程序。Livewire和Netscape服务器可以从Netscape的Web站点http://home.Netscape.com下载(30天免费试用)。
三、服务器方JavaScript编程
服务器方JavaScript程序是用Livewire开发的,具体编程步骤如下:
1、用客户机方JavaScript和服务器方JavaScript嵌入HTML中创建源文件。
2、用Livewire编译器将源文件编译成.WEB文件。服务器方JavaScript为了和客户机方JavaScript区别,提供了4种对象,request,client,project和server。
下面,我们就可以开发一些程序了,首先,以一个简单的例子向大家介绍开发过程:
学生.htm 提供学生注册登记表,让学生填写。
Process.htm 处理学生在学生.htm注册登记表中输入的数据,将客户机方与服务器方JavaScript联合起来显示学生登记表,并提交给display.htm。display.htm 显示学生.htm和process.htm收集的数据,并存放在client属性中。record.htm 将学生登记表计入文件student.txt中。
程序附后:
学生.htm
以下是引用片段:
html
head
meta http-equiv="Content-Type"
content="text/html; charset=gb_2312-80"
meta name="GENERATOR" content="Microsoft FrontPage Express 2.0"
title学生情况登记/title
/head
p align="center"font size="5"Welcome to computer center/font/p
form action="process.htm"
/form
pfont color="#00FF40" size="4"请输入学号:/font/p
form method="POST"
pinput type="text" size="13" name="T1" input
type="submit" value="Continue" /p
/form
/body
/html
Process.htm
以下是引用片段:
html
head
meta http-equiv="Content-Type"
content="text/html; charset=gb_2312-80"
title/title
/head
body bgcolor="#808080"
SERVER
pclient.t1=request.t1
write("script language="javaScript"")
write("/SCRIPT")
/SERVER
/body
/html
/script/p
p align="center"font color="#FFFF00" size="5"学生情况登记/font/p
form action="display.htm"
姓名 input type="text" size="14" name="Name"
性别 input type="text" size="7" name="Sex"
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/webkaifa/)出生年月input type="text" size="30" name="Birth"
家庭住址input type="text" size="11" name="Address"
邮政编码input type="text" size="11" name="Zip"
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/webkaifa/)电话号码input type="text" size="11" name="Tel"
/p
/form
/body
/html
display.htm
以下是引用片段:
html
head
meta http-equiv="Content-Type"
content="text/html; charset=gb_2312-80"
meta name="GENERATOR" content="Microsoft FrontPage Express 2.0"
titleclient./title
/head
body bgcolor="#FFFFFF"
SERVER
pclient.Name=request.Name
client.Sex=request.Sex
client.Birth=request.Birth
client.Address=request.Address
client.Zip=request.Zip
client.Tel=request.Tel /p
pwrite(client.Name+"
")
")
write(client.Address+"
")
write(client.Zip+"
")
write(client.Tel+"
")
/SERVER /p
form action="finish.htm"
pinput type="submit" value="继续" /p
/form
/body
/html
record.htm
以下是引用片段:
html
head
meta http-equiv="Content-Type"
content="text/html; charset=gb_2312-80"
meta name="GENERATOR" content="Microsoft FrontPage Express 2.0"
titlef=/title
/head
body bgcolor="#FFFFFF"
SERVER
pf=new file("student.txt")
f.open("a")
f.writeln(client.Name)
f.writeln(client.Sex)
f.writeln(client.Birth)
f.writeln(client.Address)
f.writeln(client.Zip)
f.writeln(client.Tel)
f.close() /p
/SERVER/body
/html