## 使用中间件设置全局变量
## 1.设置中间件,配置全局变量
~~~
//middleware/auth.js
module.exports = (option,app)=>{
return async function auth(ctx,next){
/* 设置模板的全局变量 */
ctx.state.csrf = ctx.csrf;
await next();
}
}
~~~
## 2.在模板中使用
~~~
<form action="/add?_csrf=<%= csrf%>" method='post'>
<p>用户名: <input type="text" name="username"></p>
<p>密码: <input type="password" name="password"></p>
<input type="submit" value="提交">
</form>
~~~
模板的另一中传递csrf的方式
~~~
<form action="/add" method='post'>
<input type = "hidden" name="_csrf" value="<%= csrf%>"/>
<p>用户名: <input type="text" name="username"></p>
<p>密码: <input type="password" name="password"></p>
<input type="submit" value="提交">
</form>
~~~