之前写了邮件退订部分,出了一个bug,退订的url为 /?email=user_email 提交上去就能把user_email给退订了。当然这是一个大的bug,这样随便就可以把别人的邮件退订了。
因此必须要有验证,确认是从我们给他的退订url点出来的,就增加一个unsubscribe_code ,这个退订码由服务器上的key+email生成,用户提交上来的退订码验证只需要拿服务器上的key+email算一遍是否一样即可。查课了其他一些网站的退订的url里面包含的信息更加的多。
于是上面部分用到了hashlib.md5,当然hashlib库中有很多hash方法,
常用方法有:
hash.update(arg)
更新哈希对象以字符串参数,如果同一个hash对象重复调用该方法,则m.update(a); m.update(b) is equivalent to m.update(a+b).
hash.digest()
返回摘要,作为二进制数据字符串值
hash.hexdigest()
返回摘要,作为十六进制数据字符串值