代码
视频地址 https://www.bilibili.com/video/av45473851/?p=10 https://www.bilibili.com/video/av45473851/?p=11
属性 | 类型 | 说明 |
---|---|---|
path | 字符串 | 请求页面的完整路径,不包含域名和参数部分 |
method | 字符串 | 请求方式:get、post |
encoding | 字符串 | 编码方式:None、utf-8 |
GET | QueryDict | get请求方式的所有参数 |
POST | QueryDict | post请求方式的所有参数 |
FILES | 字典 | 上传文件数据 |
COOKIES | 字典 | cookie数据 |
session | 字典 | session数据 |
# 用户登录页 def loginGet(request): print(request) print(request.method) #请求类型化 print(request.GET) #get请求方式的所有参数 print(request.GET.get('username')) #获取请求值 print(request.GET.get('pwd')) #获取请求值 print(request.GET.get('sex')) #获取请求值 print(request.GET.getlist('like')) #获取请求值 return render(request, 'user/login.html') def loginPost(request): print(request) print(request.method) # 请求类型化 print(request.POST) # get请求方式的所有参数 print(request.POST.get('username')) # 获取请求值 return redirect('/user/index') #重定向 def index(request): return HttpResponse('重定向')
def cookie(request): if 'ck1' in request.COOKIES: return HttpResponse('cookie: ' + request.COOKIES.get('ck1')) else: res = HttpResponse('第一次') print(res) res.set_cookie('ck1','zhang1') return res def session(request): if request.session.get('k1') != None: k1 = request.session.get('k1') + 1 k2 = request.session.get('k2') + 1 request.session['k1'] = k1 request.session['k2'] = k2 else: request.session['k1'] = 100 request.session['k2'] = 200 k1 = 100 k2 = 200 return HttpResponse('session: k1' + str(k1) + ' k2:' + str(k2)) def delSess(request): # 清除所有session值 request.session.clear() # 清除整条session数据 request.session.flush() # 删除session中指定的键和值 del request.session['键'] # 设置会话超时时 # 如果value是一个整数,会话将在value秒没有活动后过期。 # 如果value为0,那么用户会话的Cookie将在用户的浏览器关闭时过期。 # 如果value为None,那么会话永不过期。 request.session.set_expiry(30) return HttpResponse('session操作')
特别注意: 使用session时需要 使用命令创建数据库 不然会报错
no such table: django_session