day63 回顾django1

规范

# 上课时间(规定)
    -上午: 8:30----12:30
    -下午: 2:30----5:30
    -晚上: 6:30----9:30
    -周六周天:不讲课,不代表不学习
    
    
    
# 点名---每天三次
    -迟到:3次以上迟到----》面对老刘的疾风
    
    
# 请假---》3 次---》 面对老刘的疾风
    - 1 跟组长说
    - 2 跟班长请
    - 3 跟蔡浩请假
    - 4 跟老刘请
    
    
# 上课---》微信---退出状态---》3次机会---》   面对老刘的疾吧
​
# 游戏问题,看游戏相关视频---办公室内严禁--》1次机会
# 上课---》与讲课无关的东西--》3次机会---》 面对老刘的疾风
# 上课---》手机---》上缴---》3次机会---》    面对老刘的疾风
# 睡觉---》犯困---》让你站起来---》3次机会---》 面对老刘的疾风
​
# 上课尽量不要外出
​
​
​
​
​
​
# 后续课程--会找一份什么样的工作
# 1 回顾django
# 2 bbs项目
# 3 drf
# 4 vue
# 5 项目
# 6 爬虫
# 7 期终架构
# 8 flask
# 9 docker
# 10 redis高级
# 11 msyql主从,读写分离
# 12 分布式全文检索引擎es
# 14 go 并发,微服务
# 15 分布式id,分布式锁
# 16 ayincio
# 17 fastapi
# 18 postgresql
# 19 面试题
# 20 写简历
# 21 如何面试
# 22 模拟面试

django 大回顾

https://www.cnblogs.com/liuqingzheng/p/17120548.html

1 Web应用

##### cs/bs 架构
​
# c/s  mysql  c和s装在同一台机器上
    -c链接s: cmd窗口中   mysql -h 127.0.0.1 -P 3306 -uroot -p密码
    -网络协议:一般情况,都是软件自定制协议---》基本都是基于TCP
# b/s 浏览器--服务端 
    -咱们写的django,运行后----》s 服务端
    -客户端链接----》浏览器 
    -网络协议:所有全是  http协议---》基于TCP
        -如果不是http协议,浏览器识别不了
​
# bs本质就是cs
​
# bs好处---》软件更新了---》只需要后端更新--》前端是浏览器,不需要变---》直接访问,看到的就是最新的
​
​
###### 基于SOCKET写一个web应用#######
-我们学习bs架构软件开发---》我们开发 s端
-使用socket 写一个 s端---》浏览器就可以访问了
​
​
​
import socket
​
def server_run():
    soc = socket.socket()
    soc.bind(('127.0.0.1', 8008))
    soc.listen(5)
    while True:
        conn, addr = soc.accept()
        recv_data = conn.recv(1024)
        print(recv_data)
        # 1 直接在send里写,发送给客户端  http响应的格式
        # conn.send(b'HTTP/1.1 200 OK\r\n\r\n

hello web

')        #2 打开一个html文件,发送给客户端        # with open('index.html','r',encoding='utf-8') as f:        #     data=f.read()        # conn.send(('HTTP/1.1 200 OK\r\n\r\n%s'%data).encode('utf-8'))        # 3 动态网页,字符串替换        import time        now=time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())        print(now)        with open('index.html','r',encoding='utf-8') as f:            data=f.read()        data=data.replace('@@',now)        conn.send(('HTTP/1.1 200 OK\r\n\r\n%s'%data).encode('utf-8'))        conn.close() ​ if __name__ == '__main__':    server_run()

2 http协议

#1 是什么?
HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)
# 2 作用是?
服务器与本地浏览器之间传输超文本的传送协议
​
# 3 特点是什么?
    -1基于TCP协议之上的【应用层】协议----》它是可靠传输
    -2 基于请求-响应模式: 必须客户端主动发起--》服务端才有响应
        -如果实时跟服务端通信---》每隔2s发送一次请求--》轮询---》实现实时聊天
        -web版微信
        -实时通信---》使用轮询, webscoket 协议
        
        
   -3 无状态保存  
        -发送多次请求,对于服务端来讲,都是新的
        -cookie,session做会话保持
        
   -4 无连接  客户端不会一直跟服务端链接
        基于tcp---》有链接
 
# 4 http请求协议与响应协议
    -请求协议
        -请求首行---》请求方式--》请求地址--》请求协议版本号 1.1  \r\n
        -请求头:key-value形式 \r\n   \r\n\r\n
        -请求体:get请求一般没有请求体,post请求有请求体
        
    -响应协议 
        -响应首行:HTTP/1.1 200 OK\r\n   --协议版本---响应状态码--》响应描述符
        -响应头:响应头有什么
        -响应体:一般给个html标签
            浏览器中看到的页面,都是响应体的内容
    
    
'''
# 请求首行
GET / HTTP/1.1\r\n
​
# 请求头
Host: 127.0.0.1:8008\r\n
Connection: keep-alive\r\n
sec-ch-ua: "Google Chrome";v="119", "Chromium";v="119", "Not?A_Brand";v="24"\r\nsec-ch-ua-mobile: ?0\r\nsec-ch-ua-platform: "Windows"\r\nUpgrade-Insecure-Requests: 1\r\n
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.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.7\r\n
Sec-Fetch-Site: none\r\nSec-Fetch-Mode: navigate\r\n
Sec-Fetch-User: ?1\r\n
Sec-Fetch-Dest: document\r\n
Accept-Encoding: gzip, deflate, br\r\nAccept-Language: zh-CN,zh;q=0.9\r\n
Cookie: csrftoken=0Eq1YnctKcjVroVgrU0MtwZ7hTMsEAkUUqf9nSyKBJsOtowSZbO4Cb99eCk4y0LH\r\n\r\n
# 请求体
​
​
'''
# 0 把mysql 全都卸载---》5.7版本---》把5.6卸载
    https://zhuanlan.zhihu.com/p/571585588
# 1 保证能够链接到你同桌mysql   192.168.1.252
    1 关闭防火墙
    2 知道你同桌ip
    3 链接:mysql   navicate链接
    
    
# 2 保证你的django,你同桌可以访问
    -http://127.0.0.1:8000/login/
    
    
# 3 搜http 有哪些主要版本,版本区别是什么
    0.9
    1.1
    2.0
    3.0
    
# 4 常用请求头有哪些,响应头有什么
    -Cookie
    -contentype
# 5 有哪些常用响应状态码

你可能感兴趣的:(django,python,后端)