首页 > 代码库 > Django 修改重置密码并通过邮箱进行验证的思考
Django 修改重置密码并通过邮箱进行验证的思考
修改重置密码处理函数如下,其中包含了邮箱验证保存密码的函数:
在修改和重置两种操作时,本人在POST和GET方法中选择了POST方法,因为比较安全,但是发现在进行邮箱验证保存密码的时候发现save部分接受不到函数。经过排查,发现传入save的参数只能通过GET方法获取,因此修改为都是GET方式。
但经过思考,可以把修改重置函数和邮箱验证保存密码函数进行拆分。从而达到修改重置以POST方式得到参数,而邮箱验证保存密码部分通过GET方式得到参数。
以下代码都是以GET方法获取参数:
from django.shortcuts import render
from django.template import loader,Context
from django.http import HttpResponse
import md5
import time
from PIL import Image
from django.core.mail import send_mail
from Wiki.models import *
from Wiki.Globals import *
def PasswdSave(request):
flag="false"
Set=Global(request)
## save th password ##
if request.GET.get("type"):
type=request.GET.get("type")
if type == "save":
if request.GET.get("username") and request.GET.get("passwd") and request.GET.get("email"):
username=request.GET.get("username")
passwd=request.GET.get("passwd")
email=request.GET.get("email")
user=Set["Users"].get(Username=username)
if user.Email==email:
user.Passwd=passwd
user.save()
#flag="save_true"
flag="<html><body><script>alert(‘the passwd is updated sucess!‘);window.location.href=http://www.mamicode.com/‘/wiki/home‘;</script>