我们项目中对数据的存储有很多种,cookie,sessionStorage,localstorage等等;我们今天看下koa中对cookie的存储以及读取。
koa提供了从上下文直接读取、写入cookie的方法
ctx.cookies.get(name, [options]) 读取上下文请求中的cookie
ctx.cookies.set(name, value, [options]) 在上下文中写入cookie
我们看下具体的代码
const Koa = require('koa')
const app = new Koa()
app.use( async ( ctx ) => {
if ( ctx.url === '/index' ) {
ctx.cookies.set(
'cid',
'hello world',
{
domain: 'localhost', // 写cookie所在的域名
path: '/index', // 写cookie所在的路径
maxAge: 10 * 60 * 1000, // cookie有效时长
expires: new Date('2017-02-15'), // cookie失效时间
httpOnly: false, // 是否只用于http请求中获取
overwrite: false // 是否允许重写
}
)
ctx.body = 'cookie is ok'
} else {
ctx.body = 'hello world'
}
})
app.listen(3000, () => {
console.log('[demo] cookie is starting at port 3000')
})
我们运行代码,在浏览器中输入http://localhost:3000/,界面如下图所示
当我们在浏览器中输入http://localhost:3000/index的时候,界面如下图所示
很明显我们用koa2对数据进行存储是成功的,这里对数据的获取就不贴代码了,大家可以试试,谢谢大家