html byte 图片_手写服务器_HTML 简单入门

b3ca731ed7b8326c31beab5ee711fbe3.gif

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里面有)中。

42e32cd797fed18a3acc11751a30451d.png

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);
		}
	}
}

运行结果:

5cc8378a253b37cc1d3fe363d9a306bb.png

尚学堂百战程序员

百战程序员_IT6000集_影响6000万学习IT的中国人【官网】

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值