Django Redis配合Mysql验证用户登录
1.redis_check.py
# coding:utf-8 import pymysql
import redis
import sys def con_mysql(sql):
db = pymysql.connect(host='192.168.8.102',
user='root',
passwd='root',
port=3306,
db='test',
charset='utf8', )
cursor = db.cursor()
data = cursor.execute(sql)
db.close()
return data def con_redis(name, passwd):
pool = redis.ConnectionPool(host='192.168.8.102',
port=6379,
password='root', )
r = redis.Redis(connection_pool=pool)
r_passwd = r.hget(name, name)
if not r_passwd:
return False, '登录失败'
if passwd == r_passwd.decode('utf8'):
return True, '登录成功'
else:
return False, '登录失败' def main(name, passwd):
# name = sys.argv[1]
# passwd = sys.argv[2]
result = con_redis(name, passwd)
if not result[0]:
sql = '''select name from tb_login where name="%s" and passwd="%s"''' % (name, passwd)
data = con_mysql(sql)
if data:
pool = redis.ConnectionPool(host='192.168.8.102',
port=6379,
password='root', )
r = redis.Redis(connection_pool=pool)
r.hset(name, name, passwd)
# print('redis数据更新成功,账号密码正确!')
return True
else:
# print('账号或者密码错误!')
return False
else:
# print('登录成功!')
return True if __name__ == '__main__':
main()
2.视图路由urls.py
url(r'^log/(?P<user_dict>\w{1,12}/\w{1,23})/$', views.log)
3.视图views.py
def log(request, user_dict):
if request.method == "GET":
name, passwd = user_dict.split("/")
print(name,passwd)
res = redis_check.main(name, passwd)
print(res)
if res:
return HttpResponse("ok")
else:
return HttpResponse("error")
4.测试
http://127.0.0.1:8000/log/zq/zq/
Django Redis配合Mysql验证用户登录的更多相关文章
- Redis缓存Mysql模拟用户登录Java实现实例[www]
Redis缓存Mysql模拟用户登录Java实现实例 https://jingyan.baidu.com/article/09ea3ede1dd0f0c0aede3938.html redis+mys ...
- Redis缓存Mysql模拟用户登录Java实现实例
https://blog.csdn.net/suneclipse/article/details/50920396
- 单点登录CAS使用记(三):实现自定义验证用户登录
问题: CAS自带的用户验证逻辑太过简单,如何像正常网站一样,通过验证DB中的用户数据,来验证用户以及密码的合法性呢? 方案1:CAS默认的JDBC扩展方案: CAS自带了两种简单的通过JDBC方式验 ...
- Asp.Net使用加密cookie代替session验证用户登录状态 源码分享
首先 session 和 cache 拥有各自的优势而存在. 他们的优劣就不在这里讨论了. 本实例仅存储用户id于用户名,对于多级权限的架构,可以自行修改增加权限字段 本实例采用vs2010编写 ...
- easyui datagrid 禁止选中行 EF的增删改查(转载) C# 获取用户IP地址(转载) MVC EF 执行SQL语句(转载) 在EF中执行SQL语句(转载) EF中使用SQL语句或存储过程 .net MVC使用Session验证用户登录 PowerDesigner 参照完整性约束(转载)
easyui datagrid 禁止选中行 没有找到可以直接禁止的属性,但是找到两个间接禁止的方式. 方式一: //onClickRow: function (rowIndex, rowData) ...
- MVC4项目中验证用户登录一个特性就搞定
在开发过程中,需要用户登陆才能访问指定的页面这种功能,微软已经提供了这个特性. // 摘要: // 表示一个特性,该特性用于限制调用方对操作方法的访问. [AttributeUsage(Attribu ...
- MVC4验证用户登录特性实现方法
在开发过程中,需要用户登陆才能访问指定的页面这种功能,微软已经提供了这个特性. // 摘要: // 表示一个特性,该特性用于限制调用方对操作方法的访问. [AttributeUsage(Attribu ...
- 转:C4项目中验证用户登录一个特性就搞定
转:C4项目中验证用户登录一个特性就搞定 在开发过程中,需要用户登陆才能访问指定的页面这种功能,微软已经提供了这个特性. // 摘要: // 表示一个特性,该特性用于限制调用 ...
- .net MVC使用Session验证用户登录(转载)
.net MVC使用Session验证用户登录 用最简单的Session方式记录用户登录状态 1.添加DefaultController控制器,重写OnActionExecuting方法,每次访问 ...
随机推荐
- MVC的默认约定
MVC项目中有很多默认约定,一种是对项目目录分配的约定,比如默认情况下需要将Javascript文件放置在Script文件夹中,但这并不妨碍你将这个文件夹重新命名,也可以将整个文件夹放置到任何想要放置 ...
- (转)Python 字符串
原文:http://www.runoob.com/python/python-strings.html
- EF 通过DataAnnotations配置属性和类型
一.通过Attribute配置约束 1.主键约束 通过KeyAttribute来配置主键约束,代码如下: [Key] public int PrimaryKey{ get; set; } 2.外键约束 ...
- Vue的Computed的使用
Vue的Computed的使用 相关Html: <!DOCTYPE html> <html lang="en"> <head> <meta ...
- [转]asp.net core中的View Component
解读ASP.NET 5 & MVC6系列(14):View Component http://www.cnblogs.com/TomXu/p/4496486.html
- 【转】Ext JS 集合1713个icon图标的CSS文件
原文:http://extjs.org.cn/node/715 由于最近在研究Extjs4.1.1,没想到Extjs没有自带的iconCls所使用的图标样式css,就是用那个写那个的,纠结了半天,网上 ...
- Architecture of a Java Compiler
Architectural Overview A modern optimizing compiler can be logically divided into four parts: Th ...
- linux安装unzip及使用
安装完linux ,发现没有UNZIP,没办法,重新安装. 1.获取unzip源码 sudo wget http://downloads.sourceforge.net/infozip/unzip55 ...
- html学习笔记(一)
认识网页 网页组成 由文字.图片.输入框.视频.音频.超链接等组成. web标准 W3C组织(万维网联盟) Html (结构标准 ),相当人的身体. Css 样式(表现)标准 , 相当与给人化妆 变的 ...
- Linux下安装了Xampp,但命令行使用不了MySQL
引用:http://www.2cto.com/database/201406/309521.html 刚安装好Xampp,使用localhost也能正常运行, phpMyAdimin也能正常登录 ...