今日内容概要
- 前端简介
- HTTP
- HTML
今日内容详细
前端简介
前端与后端
1.前端:与用户直接打交道的操作界面都称之为是前端
2.后端:不直接与用户打交道,是内部真正执行核心业务逻辑的代码程序(相当于幕后工作者)
前端的核心基础
学习前端,首先就要学习HTML、CSS、JS。学习HTML相当于搭建网页的骨架;学习CSS相当于编辑网页的样式,学习JS相当于让网页的动态变化
HTTP超文本传输协议
超文本传输协议导论
1.手写一个服务端程序
import socket
server = socket.socket()
server.bind(('127.0.0.1',8080))
server.listen(5)
sock,addr = server.accept()
data = sock.recv(1024)
print(data)
sock.send(b'hello baby')
2.使浏览器充当客户端
http://127.0.0.1:8080/ (通过浏览器来充当各个服务端的客户端)
3.浏览器端无法直接展示服务服务端的响应数据
显示:该网页无法正常运作127.0.0.1 发送的响应无效
4.网络传输协议
由于浏览器需要兼容很多服务端软件,为了实现无障碍沟通交流,有了网络传输协议:HTTP协议、FTP协议、HTTPS协议
5.解决
浏览器发送的请求数据格式没有问题,因为别人早就封装好了,问题出在我们自己写的服务端响应数据格式:sock.send(b’hello baby’)
import socket
server = socket.socket()
server.bind(('127.0.0.1',8080))
server.listen(5)
sock,addr = server.accept()
data = sock.recv(1024)
print(data)
sock.send(b'HTTP/1.1 200 OK\r\n\r\nhello baby')
# sock.send(b'HTTP/1.1 200 OK\r\n\r\n')
# sock.send(b'hello big baby')
HTTP超文本传输协议
四大特性
1.基于请求响应(基于http的服务端不会主动发请求)
2.基于TCP/IP之上,作用于应用层的协议(OSI七层协议:应用层、表示层、会话层、传输层、网络层、数据链路层、物理连接层)
3.无状态(不记录客户端的状态)
4.无/短连接(请求响应之后就断开连接)
数据格式
请求数据格式
1.请求首行(请求方式(有很多种) 协议名称及版本)
2.请求头(很多k:v键值对)
3.换行
4.请求体(携带一些敏感的数据,不是所有的请求都有请求体)
# 1.请求首行
GET / HTTP/1.1\r\n
# 2.请求头
Host: 127.0.0.1:8080\r\n
Connection: keep-alive\r\n
sec-ch-ua: "Chromium";v="104", " Not A;Brand";v="99", "Google Chrome";v="104"\r\n
sec-ch-ua-mobile: ?0\r\n
sec-ch-ua-platform: "Windows"\r\n
Upgrade-Insecure-Requests: 1\r\n
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.0.0 Safari/537.36\r\n
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9\r\n
Sec-Fetch-Site: none\r\n
Sec-Fetch-Mode: navigate\r\n
Sec-Fetch-User: ?1\r\n
Sec-Fetch-Dest: document\r\n
Accept-Encoding: gzip, deflate, br\r\n
Accept-Language: zh-CN,zh;q=0.9\r\n
# 3.换行
\r\n
响应数据格式
1.响应首行(响应状态码)
2.响应头(很多k:v键值对)
3.换行
4.响应体(一般情况下就是浏览器展示给用户看的数据)
响应状态码
响应状态码就是利用数字表示一些复杂的情况说明(类似于暗号)
1xx:服务端已经接收到你的请求正在处理,你可以继续提交或者等待
2xx:常见的是200 OK :服务端给出了相应响应
3xx:重定向
4xx:常见的403:表示请求不符合条件;404请求资源不存在
5xx:服务端内部错误
ps:我们在公司中还会自己定义更多的状态码,一般情况下从10000开始
HTML超文本标记语言
HTML简介
HTML是所有浏览器展示页面必备的,浏览器展示的界面我们称之为HTML页面。
存储HTML语言的文件后缀一般是.html。
HTML没有任何的逻辑,所见及所得
HTML注释语法
<!--注释内容-->
HTML文件结构
<!DOCTYPE html>
<html>
<head></head>
<body></body>
</html>
1.<html>