views
def test_user(request):
print('start')
if request.method=='POST':
print('goon_test_user')
user = request.POST.get('user')
passwd = request.POST.get('passwd')
print(user,passwd)
print('#####')
if models.UserToPasswd.objects.filter(user=user,passwd=passwd).first():
print('')
dic = {'user':user,'status': '', 'msg': '用户名或密码错误'}
dic_dump=json.dumps(dic)
###
obj = HttpResponse(dic_dump)
obj.set_cookie('is_login',True,max_age=100)
obj.set_cookie('user',user)
###
return obj else:
print('')
dic = {'user':user,'status':'','msg':'用户名或密码错误'}
dic_dump = json.dumps(dic)
return HttpResponse(dic_dump) else:
return render(request,'test_user.html') def test2_user(request):
if request.method=='POST':
user = request.POST.get('user')
passwd = request.POST.get('passwd')
models.UserToPasswd.objects.create(user=user,passwd=passwd)
# token =request.POST
return render(request,'time_go.html',locals())
# return render(request,'time_go.html',locals())
return render(request,'sign_in.html') def success(request,user):
print('xxxxxxxx')
print(request.COOKIES)
if not request.COOKIES.get('is_login'):
return redirect("/test_user/")
user= request.COOKIES.get('user')
# return HttpResponse('Hello sir %s'%user)
return render(request,'index.html',locals())

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>auth</title>
<script src="/static/jquery-3.3.1.js"></script>
{# <script src="https://cdn.bootcss.com/jquery/3.2.1/jquery.js "></script>#}
{# <link rel="stylesheet" href="/static/bootstrap/css/bootstrap.min.css">#}
</head>
<style>
.hide{
display: none;
}
</style>
<body> {#test#}
{#<input type="text" id="in1"> + <input type="text" id="in2"> = <input type="text" id="in3"> <button class="sub">submit</button>#}
{#<hr>#} <form action="" method="">
{% csrf_token %}
<h2>请输入登陆信息</h2>
<p>用户名:<input type="text" class="u_p" id="user"></p>
<p>密码: <input type="password" class="u_p" id="passwd"></p>
{# <button class="auth">登陆</button> <span class="err hide"></span>#}
<input class="auth" type="button" value="登陆"> <span class="err hide"></span>
</form> <script>
$(".auth").click(function () { $.ajax({
url:"/test_user/",
type:'post',
data:{'user':$('#user').val(), {#发送数据到上方的url中,type可以选择,在视图的request中可以将数值取出来,用get字典中的name即‘in1’#}
'passwd':$('#passwd').val(),
'csrfmiddlewaretoken':$('[name=csrfmiddlewaretoken]').val(), {#这个是post请求时候用的验证,相当于表单的验证.#}
}, success:function (data) { {#这里的data是服务器返回来的数据,即return HttpResponse(str(in3))中HttpResponse中的值#}
var data =JSON.parse(data)
console.log(data)
console.log("---------") var user = data['user']
console.log(user)
var status = data['status']
var msg= data['msg']
if (status=='1'){
temp="/success/ppp";
temp = temp.replace('ppp',user)
location.href=temp
$('.err').addClass('hide')
} else {
$('.err').text(msg)
$('.err').removeClass('hide') } {##}
},
{# error:function (data) {#}
{# var data#}
{# #}
{# #}
{# } #} }) }) {# $("#auth").onclick(function () {#}
{# $.ajax(#}
{# {url:'/ajax_auth/',#}
{# type:'post',#}
{# data:{ 'user':$('#user').val(),#}
{# 'passwd':$("#passwd").val(),#}
{# 'csrfmiddlewaretoken':$("[name=csrfmiddlewaretoken]").val()#}
{# },#}
{# success:function () {#}
{##}
{##}
{##}
{# }#}
{##}
{# }#}
{# )#}
{##}
{# })#}
{# 绑定焦点事件 #}
{# $(".u_p").onfocus(function () {#}
{# $.ajax(#}
{# {url:"/test_user/",#}
{# type:'post',#}
{# data:{ 'user':$('.u_p').val(),#}
{# 'csrfmiddlewaretoken':$('[name=csrfmiddlewaretoken]').val(),#}
{# },#}
{# success:function (data) {#}
{# if (data.get('user')==0){#}
{##}
{# }#}
{##}
{# }#}
{# }#}
{##}
{# )#}
{##}
{# })#}
{##} </script>
</body>
</html>

xxx

cookies_ajax的更多相关文章

随机推荐

  1. vue2.0变化

    之前有很多的vue知识总结都是围绕1.0版本实现的,下面主要总结一下2.0相对于1.0的一些变化. 组件定义 在vue1.0中,我们有使用vue.extend()来创建组件构造器继而创建组件实例,如下 ...

  2. redis安装,修改配置文件,多实例部署 redis-server

    redis 安装 解压: [root@Aliyun software]# tar -xvf redis-3.2.11.tar.gz 进入redis根目录: [root@Aliyun software] ...

  3. Java NIO系列教程(三) Channel之Socket通道

    目录: <Java NIO系列教程(二) Channel> <Java NIO系列教程(三) Channel之Socket通道> 在<Java NIO系列教程(二) Ch ...

  4. [C#]App.Config

    <configuration> <runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm. ...

  5. logging模块知识点及应用小结

    Logging模块知识点: 一.分为5个级别:debug(),info(),warning(),error(),critical().级别由低到高  1.1最简单的用法: 1.2 如果想把日志写到文件 ...

  6. [UE4]蓝图比C++慢10倍,是吗?

    首先,蓝图肯定是比C++慢. 任何脚本语言(需要解释执行的语言),和C++相比可能达到十倍甚至百倍的差距.比如Java.Python.Lua,JS. 脚本语言是运行在虚拟机上的,所以它们比起直接运行的 ...

  7. [UE4]计算小地图比例尺

    一.调整到顶视图,按住鼠标中键从地图的左边拉一根线到右边,可以看到距离是4000厘米(UE4单位是厘米). 二.查看到缩略图片的长度是512px,512/4000 = 0.128,比例尺是0.128. ...

  8. zabbix监控ESXI主机(可用)

    ESXI6.0默认SSH关闭的,打开SSH的方法如下图: SSH打开后,主机会有警报,关闭警报的方法如下图 esxcli system  snmp  set  --communities  publi ...

  9. 知识点:Mysql 基本用法之触发器

    触发器 使用触发器可以定制用户对表进行[增.删.改]操作时前后的行为 注意:没有查询 一 .创建触发器 触发器基础语法: # 插入前 CREATE TRIGGER tri_before_insert_ ...

  10. pandas函数get_dummies的坑

    转载:https://blog.csdn.net/mvpboss1004/article/details/79188190 pandas中的get_dummies得到的one-hot编码数据类型是ui ...