01.前端必备知识

前端必备知识

1. web本质

import socket

sk = socket.socket()

sk.bind(("127.0.0.1", 8080))
sk.listen(5)

while True:
    conn, addr = sk.accept()
    data = conn.recv(8096)
    # 这是服务端响应的格式,如果没有则打开浏览器得不到响应信息
    conn.send(b"HTTP/1.1 200 OK\r\n\r\n")
    conn.send(b"<h1>Hello world!</h1>")
    conn.close()

本质:浏览器发请求 --> HTTP协议 --> 服务端接收请求 --> 服务端返回响应 --> 服务端把HTML文件内容发给浏览器 --> 浏览器渲染页面

2. http协议

show code
"""
HTTP协议的由来(sql语句由来)
	浏览器只有一个如何兼容N多个服务端
"""
# 四大特性
  1 基于请求响应
  2 基于TCP/IP作用于应用层之上的协议
  3 无状态
  	无论来多少次 都待你如初见
   	如何做到保存用户状态???
    	cookie、session、token
  4 无/短链接
  	请求来我响应你 之后就没有联系了
    长链接:websocket(群聊功能、服务端主动给客户端发送消息)

# 请求数据格式
  请求首行(HTTP协议的版本,当前请求方式)
  请求头(一大堆k,v键值对)
  
  请求体(并不是所有的请求方式都有请求体,get没有post有)
  
# 响应数据格式
  响应首行(HTTP协议的版本,响应状态码)
  响应头(一大堆k,v键值对)
  
  响应体(浏览器展示给用户看的内容)
 
# URL
  统一资源定位符 类似于坐标
# 请求方式
  1.get请求
  	朝别人要数据(也是可以携带参数的,只不过参数不是放在请求体里面的,而是直接放在url的后面)
  	url?username=jason&password=123
  2.post请求
  	朝别人提交数据

# 响应状态码
"""用简短的数字来表示一大串提示性信息"""
1XX:服务端已经成功接收到了你的数据 正在处理你可以继续提交
2XX:请求成功(200 OK)
3XX:重定向(你想访问A页面但是给你调到了B页面)
4XX:请求错误(404请求资源不存在、403请求不符合条件)
5XX:服务端内部错误(500)
ps:上述的状态码是HTTP协议规定的,其实到了公司之后每个公司还会自己定制自己的状态及提示信息
  	公司A
    	1000:
      1001:
      1002:
    公司B
    	2001:
      2002:
      2003:
      ...
posted @ 2021-08-09 10:50  超暖  阅读(39)  评论(0)    收藏  举报