目录
前端和后端的概念
# 前端
任何与用户直接打交道的操作界面 都可以称之为前端(前端界面、页面)>>> 前台接待
# 后端
不直接与用户打交道 主要负责内部真正的业务逻辑的执行 >>> 幕后操作者
前端学习之路
专业的前端也需要培训六个月 而我们作为后端开发工程师 只学最基本的最核心的 为以后的工作提供方便
1.防止看不懂
2.编写简单页面
3.逼急了转前端
前端三剑客
HTML 网页的骨架
CSS 网页的血肉
JS 网页动态效果(轮播图)
举例:
'''
蜡笔小新光着身子 HTML
穿裙子 抹口红 CSS
丢根钢管 舞起来 JS
'''
前端前戏
用chrome浏览器作为客户端来访问我们代码写的服务端:
1.编写服务端代码
2.让浏览器作为客户端访问服务端
3.浏览器无法正常展示
import socket
server = socket.socket()
server.bind(('localhost',8080))
server.listen(5)
conn, address = server.accept()
data = conn.recv(1024)
print(data)
conn.send(b'hello world')
浏览器:
响应无效:浏览器接受到了服务端传的消息,只不过无法解析。
服务端:
数据交互的协议
1. 一个浏览器可以访问多个服务端。每个服务端是由不同的程序员写的。
2. 服务端有资格规定传输的数据格式,浏览器如何知道根据不同数据做不同处理?
3. 所以规定只要想让浏览器访问,服务端就必须遵循一些公共的标准。如:HTTP协议
4. HTTP协议规定了浏览器和服务端之间数据交互的格式。
5. 浏览器响应无效的原因:服务端传输的格式不对,解析不出来。
'''
补充:
使用C/S架构可以不遵循HTTP协议,因为自己写客户端和服务代码。
'''
HTTP协议
1.四大特性
1. 基于请求响应
客户端发送的信息(请求)
服务端回应的信息(响应)
服务端永远不会主动给客户端发消息(高冷)
2. 基于TCP、IP作用与应用层之上的协议
只需要知道HTTP是在应用层的
3. 无状态
简单的理解为:
服务端不会保存客户端的状态
(服务端记不住人)
纵使见他千百遍 我都当她如初见
cookies
4. 无\短连接
客户端与服务端不会长久保持连接(数据发完就立即断开连接,不留瓜葛)
如果想要长连接 可以使用websocket协议
2.数据格式
- 请求格式
请求首行(请求方式 请求方式有很多种 协议版本)
请求头 一大堆k:v键值对 类似报头
换行
请求体 存放敏感信息(如用户名密码)(并不是所有的请求方式都有请求体)
- 响应格式
(响应格式应该和请求格式一样)
响应首行(状态码 协议版本)
响应头 一大堆k:v键值对
换行
响应体 (存放给浏览器展示的数据)
3.响应状态码(status code)
- 响应状态码的作用:
用数字来表达一些文字意义(类似于暗号)
便于记忆,方便理解,更快捷。 - 常见响应状态码:
1xx 短暂 服务端已经接受到了你的请求 客户端可以继续发送或者等待
2xx: 200 ok 请求成功 服务端发送了对应的响应
3xx: 302 304 分为临时重定向(可以在跳回来) 永久重定向(回不来了)
4xx:403访问权限不够 404请求资源不存在(地址没有对应的数据)
5xx:服务端内部错误
1xxxx:自定义响应状态码 10000起步
什么叫重定向?添加购物车,跳转到登录。原本想访问网页A,却自动让你访问网页B
自定义响应状态码:10000起步!(聚合数据):
websocket协议
网络弹窗:websocket协议
微信加好友:永远连着一个通道 websocket协议
将客户端和服务端永久连接 可以支持服务端主动和客户端发消息
更多:https://blog.csdn.net/qq_58467694/article/details/125267043
HTML简介
1.直接发送手写的数据
2.转为发送文件里面的数据
3.编写HTML出现特殊的现象
特点:所见即所得(没有任何逻辑 写什么就是什么)
重写服务端,使得浏览器可以访问:
给浏览器传输一个文本文件:
给浏览器传输一个‘特殊的文本文件’: