1、HTML
HTML(HyperText Markup Language) 超文本标记语言,用于描述网页文档的一种标记语言。 HTML 不是一种编程语言,而是一种标记语言 (markup language),是网页制作所必备的。“超文本”就是指页面内可以包含图片、链接,甚至音乐、程序等非文字元素。超文本标记语言(或超文本标签语言)的结构包括“头”部分、和“主体”部分,其中“头”部提供关于网页的信息,“主体”部分提供网页的具体内容。
2、第一个 HTML 文档
<html>
<head>
<title>第一个HTML文档</title>
</head>
<body>
<h1>helloworld</h1>
</body>
</html>
3、表单 form
表单在网页中主要负责数据采集功能(用户与服务器进行交互)。一个表单有三个基本组成部分: 表单标签:这里面包含了处理表单数据所用CGI程序的URL以及数据提交到服务器的方法。 表单域:包含了文本框、密码框、隐藏域、多行文本框、复选框、单选框、下拉选择框和文件上传框等。 表单按钮:包括提交按钮、复位按钮和一般按钮;用于将数据传送到服务器上的CGI脚本或者取消输入,还可以用表单按钮来控制其他定义了处理脚本的处理工作。
CGI(Common Gateway Interface)程序是HTTP服务器与你的或其它机器上的程序进行“交谈”的一种工具,其程序须运行在网络服务器上。绝大多数的CGI程序被用来解释处理来自表单的输入信息,并在服务器产生相应的处理,或将相应的信息反馈给浏览器。CGI程序使网页具有交互功能。
CGI处理步骤:
⑴通过Internet把用户请求送到服务器。
⑵服务器接收用户请求并交给CGI程序处理。
⑶CGI程序把处理结果传送给服务器。
⑷服务器把结果送回到用户。
<html>
<head>
<title>第一个表单</title>
</head>
<body>
<form action="http://localhost:8888/index.html" method="post">
<p>用户名:
<input type="text" name="uname" id="username" />
</p>
<p>密码:
<input type="password" name="pwd" id="password" />
</p>
<p>
<input type="submit" value="登录" />
</p>
</form>
</body>
</html>
action:请求的服务器路径,什么都不写默认为当前页面。
method:请求方式 get/post
get:数据量小,安全性低,默认方式。数据会出现在地址栏中。
post:数据量大,安全性高。数据会出现在请求正文(只有post里面有)中。
name:名称,后端(服务器)区分唯一性,获取值,只要提交数据给后台(服务器)必须存在 name
id:(用户的的浏览器在文档里区分唯一性)前端区分唯一性,js 中。
4、在服务器查看请求正文的数据(演示)
public class HttpServer {
//输入网址进行测试:http://localhost:8888/index.html
public static void main(String[] args) {
System.out.println("------------服务器------------");
ServerSocket server = null;
Socket socket = null;
InputStream is = null;
try {
//(1)创建ServerSocket对象
server = new ServerSocket(8888);
//(2)监听是否有客户端发送请求,并获取Socket对象
socket = server.accept();
//(3)获取来自浏览器的请求信息
is = socket.getInputStream();
byte[] buf = new byte[1024];
int len = 0;
while((len = is.read(buf)) != -1) {
System.out.println(new String(buf, 0, len));
}
} catch (IOException e) {
e.printStackTrace();
}finally {
//(5)关闭流
IOUtil.closeAll(is, socket, server);
}
}
}
运行结果:
尚学堂百战程序员
百战程序员_IT6000集_影响6000万学习IT的中国人【官网】