1.app.js

/**
* cookie的简介:
* 1、cookie保存在浏览器客户端
* 2、可以让我们用同一个浏览器访问同一个域名的时候共享数据
*
* cookie的作用:
* 1、保存用户信息
* 2、浏览器历史记录
* 3、猜你喜欢的功能
* 4、10天免登录
* 5、多个页面之间的数据传递
* 6、cookie实现购物车功能
*/
// 引入模块
const Koa = require('koa');
const router = require('koa-router')(); /*引入是实例化路由 推荐*/
const render = require('koa-art-template');
const path = require('path'); // 实例化
let app = new Koa(); // 配置 koa-art-template 模板引擎
render(app, {
root: path.join(__dirname, 'views'), // 视图的位置
extname: '.html', // 后缀名
debug: process.env.NODE_ENV !== 'production' // 是否开启调试模式
}) router.get('/', async (ctx) => {
// 正常就这样配置就可以了
/**
ctx.cookies.set('userinfo', 'zhangsan', {
maxAge: 1000 * 60 * 60
});
*/ ctx.cookies.set('userinfo', 'zhangsan11', {
maxAge: 1000 * 60 * 60,
// path: '/news', /*配置可以访问的页面*/
// domain: '.baidu.com', /*正常情况不要设置 默认就是当前域下面的所有页面都可以访问*/
/**
* a.baidu.com
* b.baidu.com 共享cookie
*/
httpOnly: false, // true表示这个cookie只有服务器端可以访问,false表示客户端(js)、服务器端都可以访问
}) let list = {
name: '张三'
}
await ctx.render('index', {
list: list
})
}) router.get('/news', async (ctx) => {
let userinfo = ctx.cookies.get('userinfo'); let app = {
name: '张三'
}
await ctx.render('news', {
list: app
});
}) app.use(router.routes());
app.use(router.allowedMethods()); app.listen(3000);

2.views/index.html

<!DOCTYPE html>
<html lang="en"> <head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<link rel="stylesheet" href="css/basic.css" />
<script>
console.log(document.cookie);
</script>
</head> <body>
<h2 class="title">这是一个koa-art-template</h2>
<h2>绑定数据</h2>
<%=list.name%>
</body>
</html>

views/news.html

<!DOCTYPE html>
<html lang="en"> <head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<link rel="stylesheet" href="css/basic.css" />
<script>
console.log(document.cookie);
</script>
</head> <body>
<h2 class="title">这是一个koa-art-template</h2>
<h2>绑定数据</h2>
{{list.name}}
</body> </html>

.

最新文章

  1. Android功能点
  2. PHP实现新浪长链接转化成短链接API
  3. Windows phone应用开发[18]-下拉刷新
  4. SQL 2012 Group By Rollup, Grouping
  5. Java写的斗地主游戏源码
  6. import_site
  7. js 实现获取对象所有键名(key)的方法
  8. JavaScript 获取客户端计算机硬件及系统信息
  9. 使用hwclock同步RTC(硬件时钟)和OS Clock(操作系统时钟)
  10. Asp.net Web.Config - 配置元素customErrors
  11. 在win8.1 64位系统+cocos2d-x2.2.3下搭建android交叉编译环境
  12. 安装 CentOS 7 后必做的七件事
  13. POJ 2255 Tree Recovery 二叉树恢复
  14. 《JavaScript高级程序设计》读书笔记 ---变量
  15. geoserver发布地图服务WMS
  16. python写一个防御DDos的脚本(请安好环境否则无法实验)
  17. window平台写的shell脚步在Linux不识别
  18. 用IntelliJ IDEA 开发Spring+SpringMVC+Mybatis框架 分步搭建二:配置MyBatis 并测试(1 构建目录环境和依赖)
  19. 游戏人工智能编程案例精粹(修订版) (Mat Buckland 著)
  20. SPOJ10707 COT2 - Count on a tree II 【树上莫队】

热门文章

  1. 3.移动端自动化测试-appium环境搭建(原理)
  2. xtrabackup备份恢复过程
  3. 如何对Win10电脑文件夹选项进行设置?
  4. hive--构建于hadoop之上、让你像写SQL一样编写MapReduce程序
  5. 网络初级篇之STP(BPDU详解与STP故障恢复)
  6. 迭代器遍历【List、Set、Map】
  7. springboot集成redis使用redis作为session报错ClassNotFoundException类RememberMeServices
  8. [APIO2010] 算法竞赛竞赛经典 巡逻
  9. Android异常与性能优化相关面试问题-OOM异常面试问题详解
  10. C#学习之Timothy Liu