koa提供了从上下文直接读取、写入cookie的方法
koa2 中操作的cookies是使用了npm的cookies模块,源码在https://github.com/pillarjs/cookies,所以在读写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')})
node index.js