上一篇我们已经搭好了django环境,接下来创建一个app
cmd进入我们的工程目录执行命令
python manage.py startapp web
项目里已经有了web这个应用文件
接下来将我们的应用app添加到setting
在views.py中添加第一个测试
from django.http.response import HttpResponse def Login(request): return HttpResponse('This is the first test')
我们访问127.0.0.1:8000/login,基本的一个原理
urls中调用Login,这里相当于一个路由,首先执行的是这个path 去找login 映射的是Login方法---->然后HttpResponse返回我们指定内容
然后我们来做一个很low的post接口
先在templates文件里写一个最简单的登录页
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Login</title> </head> <body> <form action="/login/" method="POST"> <h1>用户名:<input name="username"></h1> <h1>密码:<input name="password"></h1> <input type="submit" value="登录"> </form> </body> </html>
然后在views定义login方法
from django.http.response import HttpResponse from django.shortcuts import render_to_response def Login(request): if request.method == 'POST': usernam = request.POST.get('username') #获取用户提交的username return HttpResponse(usernam) else: return render_to_response('login.html') #当不是post请求时,返回到登录页面
这里需要设置两个地方
一个是templates的地址,在setteings中
另外一个是安全验证的警告,我们先忽略掉,否则会403
测试一下接口 ,返回200
再来一个get
from django.http.response import HttpResponse from django.shortcuts import render_to_response import json def Login(request): if request.method == 'POST': username = request.POST.get('username') #获取用户提交的username return HttpResponse(username) elif request.method == 'GET': result = {} username = request.GET.get('username') mobile = request.GET.get('mobile') data = request.GET.get('data') result['user'] = username result['mobileNum'] = mobile result['data'] = data result = json.dumps(result) return HttpResponse(result,content_type= 'application/json;charset=utf-8') else: return render_to_response('login.html') #当不是post请求时,返回到登录页面
测试一下
试试我们刚刚的登录页面,也是可以的