Django学习手册 - 登录验证码】的更多相关文章

生成验证码函数 import random from PIL import Image, ImageDraw, ImageFont, ImageFilter _letter_cases = "abcdefghjkmnpqrstuvwxy" # 小写字母,去除可能干扰的i,l,o,z _upper_cases = _letter_cases.upper() # 大写字母 _numbers = ''.join(map(str, range(3, 10))) # 数字 init_chars…
# 装饰器定义 def auth(func): def inner(request,*args,**kwargs): v = request.COOKIES.get("user") if not v: return redirect("/login/") return func(request,*args,**kwargs) return inner # FBV 方式 # @auth # def index(request): # v = request.COOKI…
处理流程 用户请求网页 --> 后台发送登录界面的静态页面 --> 后台在内存中生成验证码 --> 验证码保存在用户对应的Session中 --> 返回验证码图片到前端 用户登录界面再加载生成后的图片验证码 --> 用户提交数据 --> 匹配相应的文本框和Session中的验证码 HTML页面 <!DOCTYPE html> <html> <head lang="en"> <meta charset=&quo…
原理分析: API接口验证 1.一个认证的key server端 和 client端都必须有这么一个认证key. 2.认证登录的时间限定 3.保存已验证的信息,在以后的验证不能再次登录 client 端: import requests import hashlib import time # 基于验证的key au_key = "dawefgdsfsafdsadas" # 基于验证的时间 au_time = time.time() # 将验证的key与时间合并成一个字符 au_key…
实例:通过前台和后台,实现用户登录页面动态图片验证码校验,图片验证码部分使用Pillow模块实现,作为单独学习部分记录. 前端: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>login</title> <link rel="stylesheet" href="/st…
DOM 字段/参数 配置格式: Module.字段(参数) 常用的字段归纳: 数字 models.AutoField() 自增列(int),必须设置为主键 models.IntegerField() 整型 models.FloatField() 浮点 models.DecimalField(max_digits=8,decimal_places=3) 精确浮点 字符串 models.CharField() 字符串,必须设置max_length 参数 models.TextField(Field)…
cookie """ cookie属性: obj.set_cookie(key,value,....) obj.set_signed_cookie(key,value,salt="加密盐",....) 参数: key 键 value=“” 值 max_age=None 超时时间 expires=None 超时日期 path="/" cookit生效的路径,/表示根路径,特殊的,跟路径的cookie可以被任何url被任何url的页面访问…
下载XLS表格方式: 前置: 需要安装xlwt模块 views : def export_users_xls(request): response = HttpResponse(content_type='application/ms-excel') response['Content-Disposition'] = 'attachment; filename="abc.xls"' wb = xlwt.Workbook(encoding='utf-8') ws = wb.add_she…
验证需要知道requests提交数据的几种方式: GET 方式: # get 方式,传递数值可以直接通过url传递:(服务端接受 GET) requests.get(url='http://127.0.0.1:8000/api/?k1=a1') # get 方式也可通过参数 params:(服务端接受 GET) requests.get(url='http://127.0.0.1:8000/api/',params={"K1":'a1'}) POST 方式:(在django中需要注意c…
从数据库获取数据后,对数据进行清洗 目标: 数据1,存放至session 中的数据 数据2,显示至前端的菜单数据 清洗数据: 1.session存放的数据:(menu_leaf_dict) 2.前端菜单数据(rasult) from app01 import models # 取用户角色 uname juese data = models.Juese.objects.filter(utoj__u__uname='xguo') # 获取当前用户角色的权限 uname_juese quanxian_…