1. session固定设置:
# session存储类型
SESSION_TYPE="redis"
# 开启session签名为true
SESSION_USE_SIGNER=True
# 设置session过期时间,单位为秒s
PERMANENT_SESSION_LIFETIME=86400
# 访问redis?
SESSION_REDIS = redis.StrictRedis(host=REDIS_HOST,port=REDIS_PORT)
2. log日志固定用法,设置:
# 设置日志的记录等级
logging.basicConfig(level=logging.DEBUG) # 调试为debug级
# 创建日志记录器,指明日志保存的路径、每个日志文件的最大大小、保存的日志文件个数上限
file_log_handler = RotatingFileHandler("logs/log", maxBytes=1024*1024*100, backupCount=10)
# 创建日志记录的格式 日志等级 输入日志信息的文件名 行数 日志信息
formatter = logging.Formatter('%(levelname)s %(filename)s:%(lineno)d %(message)s')
# 为刚创建的日志记录器设置日志记录格式
file_log_handler.setFormatter(formatter)
# 为全局的日志工具对象(flask app使用的)添加日志记录器
logging.getLogger().addHandler(file_log_handler)
3. 数据库设置
# mysql 配置,更换数据库类型可直接将URI里面的mysql更换成其他即可
SQLALCHEMY_DATABASE_URI="mysql://root:mysql@127.0.0.1:3306/news_project"
SQLALCHEMY_TRACK_MODIFICATIONS=False
4. 正则匹配邮箱手机号密码
#邮箱验证 i表示忽略大小写
var reMail = /^[a-z0-9][\w\.\-]*@[a-z0-9\-]+(\.[a-z]{2,5}){1,2}$/i;
#密码验证
var rePass = /^[\w!@#$%^&*]{6,20}$/;
#手机号码验证
var rePhone = /^1[34578]\d{9}$/;
#用户名验证:(数字字母或下划线6到20位)
var reUser = /^\w{6,20}$/;
5. 导入模块 更新
from imp import reload
reload(模块名)
6.套接字端口复用
tcp_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
7.http协议
a. http协议:请求报文:
请求行: GET/aaaa HTTP/1.1 get为方法字段,aaaa为url内容
请求头:由键值对组成 Connection:keep-alive 为长连接
(空行):不可省略
请求包体:输入网址一般都没有请求包体
b. http协议:响应报文:
状态行: HTTP/1.1 200 OK 200代表状态码 404 NOT FOUND
响应头部 Content-Length:5 告诉浏览器需要显示内容的长度,这里显示5个字符
(空行):不可省略
响应包体:真正显示到网页上的内容,标签为网页格式,也不会显示到浏览器上