step1:百度中输入 “ html 登陆页面”关键字,找一段现成的html登陆页面代码,比如
step2: 将代码copy到index.html,先不考虑css,将其删除,其它地方也改造一下,保留最简单的部分,最后将index.html改造成下面的代码。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Django Page</title>
</head>
<body>
<p id="login">
<h1>发布会管理</h1>
<form method="get">
<input type="text" placeholder="username" name="username"></input><br>
<input type="password" placeholder="password" name="password"></input><br>
<button id="btn" type="submit">登录</button>
</form>
</p>
</body>
</html>
<title>Django Page</title> 定义Head的标题
<h1>发布会管理</h1> 定义body下段落的标题
<form method="get"> 定义一个form,并采用get请求
step3: 运行一下,输入账号密码点击登陆,因为用的是get请求,所以username和password都自动显示到url上
step4: 将html中的get改为post,再次输入账号、密码点击登陆,报如下错误,index页面并没有展现成功。
step5:根据上面的help,需要在post form中加入{% csrf_token %},加入后即可正常工作
<form method="post">
<input type="text" placeholder="username" name="username"></input><br>
<input type="password" placeholder="password" name="password"></input><br>
<button id="btn" type="submit">登录</button>
{% csrf_token %}
</form>
补充:CSRF的用途是在生成的表单中放置一个自动生成的令牌,通告令牌判断POST请求是否来自一个网站。