HTML
HTML 是用来描述网页的一种语言。
HTML 标题是通过<h1> - <h6> 标签来定义的。
<h1>标题</h1>
<h2>标题</h2>
<h3>标题</h3>
HTML 段落是通过标签 <p> 来定义的。
<p>段落</p>
HTML 链接是通过标签 <a> 来定义的。
<a href="https://blog.csdn.net/Ngkiynet">这是一个链接</a>
HTML 图像是通过标签 <img> 来定义的.
<img src="/image/logo.png" width="300" height="200" />
CSS
CSS通常称为CSS样式表或层叠样式表(级联样式表),主要用于设置HTML页面中的文本内容(字体、大小、对齐方式等)、图片的外形(宽高、边框样式、边距等)以及版面的布局等外观显示样式。
CSS以HTML为基础,提供了丰富的功能,如字体、颜色、背景的控制及整体排版等,而且还可以针对不同的浏览器设置不同的样式。
JavaScript
JavaScript是基于对象和事件驱动的脚本语言,是一种脚本语言,不需要编译,是解释运行的语言,主要应用在客户端。
HTTP工作原理
请求/响应模型
HTTP请求:
请求方法 资源路径 版本信息
请求头
请求体
HTTP响应:
状态 (状态码 + 状态描述) 版本信息
响应头
响应体
HTTP 请求/响应的步骤:
1.客户端连接到Web服务器
2.发送HTTP请求
3.服务器接受请求并返回HTTP响应
4.释放连接TCP连接
5.客户端浏览器解析HTML内容
如:在浏览器地址栏键入URL,按下回车之后会经历以下流程:
1)浏览器向 DNS 服务器请求解析该 URL 中的域名所对应的 IP 地址;
2)解析出 IP 地址后,根据该 IP 地址和默认端口 80,和服务器建立TCP连接;
3)浏览器发出读取文件(URL 中域名后面部分对应的文件)的HTTP 请求,该请求报文作为 TCP 三次握手的第三个报文的数据发送给服务器;
4)服务器对浏览器请求作出响应,并把对应的 html 文本发送给浏览器;
5)释放 TCP连接;
6)浏览器将该 html 文本并显示内容;
常见请求方法及含义
方法 | 含义 |
---|---|
GET | 请求指定的页面,并返回实体主体 |
POST | 向指定资源提交数据进行处理请求。数据被包含在请求体中。 |
HEAD | 类似get请求,只是返回的响应中没有具体的内容,用于获取报头 |
PUT | 从客户端向服务器传送的数据取代指定的文档的内容 |
DELETE | 请求服务器删除指定的页面 |
CONNECT | HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器 |
OPTIONS | 允许客户端查看服务器的性能 |
TRACE | 回显服务器收到的请求,用于测试或诊断 |
常见响应状态及含义
状态码 | 状态码英文名称 | 含义 |
---|---|---|
200 | OK | 请求成功,一般用于GET与POST请求。 |
301 | Moved Permanently | 永久移动。请求的资源以被移动到新的URI,返回信息会包括新的URI,浏览器会自动定向到新URI。今后任何新的请求都应使用新的URI代替。 |
302 | Found | 临时移动。与301类似。但资源只是临时被移动。客户端应继续使用原有的URI。 |
304 | Not Modified | 未修改。所请求的资源未修改,服务器返回此状态码时,不会返回任何资源。客户端通常会缓存访问过的资源,通过提供一个头信息指出客户端希望只返回在指定日期之后修改的资源。 |
307 | Temporary Redirect | 临时重定向。与302类似。使用GET请求重定向。 |
400 | Bad Request | 客户端请求的语法错误,服务器无法理解。 |
401 | Unauthorized | 请求要求用户的身份认证。 |
403 | Forbidden | 服务器理解请求客户端的请求,但是拒绝执行此请求。 |
404 | Not Found | 服务器无法根据客户端的请求找到资源(网页)。通过此代码,网站设计人员可设置"您所请求的资源无法找到"的个性页面。 |
405 | Method Not Allowed | 客户端请求中的方法被禁止。 |
500 | Internal Server Error | 服务器内部错误,无法完成请求。 |
502 | Bad Gateway | 作为网关或者代理工作的服务器尝试执行请求时,从远程服务器接收到了一个无效的响应。 |
常见HTTP头
Request Header:
• Host:客户端告知服务器,请求的资源所在的主机号和端口号
• User-Agent:声明用户的浏览器版本信息
• Referer:当前页面从哪个页面跳转过来的
• Location:告诉客户端接下来去哪里访问
• Cookie:用于在客户端存储少量信息,通常用于实现会话的功能
• Content-Length:Body的长度
Response Header:
• HTTP/1.1:响应状态行
• Date:服务端发送资源时服务器时间
• Cache-Control:现在最多使用的控制缓存的方式,会和服务区进行缓存验证
• etag:一般是Nginx静态服务器发来的静态文件签名。
• Content-Type:数据类型(text/html等)
静态资源和动态资源
静态资源:内容是事先写好的,无论任何时间任何人访问,都会得到同样的结果。
动态资源:内容是服务器收到请求后才生成的,可以做到根据请求的不同,基于不同的内容。
JSP 技术
JSP实质上就是一个Servlet,是为了简化Servlet的工作出现的替代品,Servlet输出HTML非常困难,JSP就是替代Servlet输出HTML的。