koa--cookie

2020-06-21  本文已影响0人  我爱阿桑

开发中制作登录和保存用户信息在本地,最常用的就是cookie操作。比如我们在作一个登录功能时,希望用户在接下来的一周内都不需要重新登录就可以访问资源,这时候就需要我们操作cookie来完成我们的需求。koa的上下文(ctx)直接提供了读取和写入的方法

const Koa  = require('koa');
const app = new Koa();

app.use(async(ctx)=>{
    if(ctx.url=== '/index'){
        ctx.cookies.set(
            'MyName','JSPang',{
                  domain:'127.0.0.1', // 写cookie所在的域名
                  path:'/index',       // 写cookie所在的路径,不是该路径,不会保存该cookie
                  maxAge:1000*60*60*24,   // cookie有效时长
                  expires:new Date('2018-12-31'), // cookie失效时间
                  httpOnly:false,  // 是否只用于http请求中获取
                  overwrite:false  // 是否允许重写
             }
        );
        ctx.body = 'cookie is ok';
    }else{
        // 读取cookie
         if( ctx.cookies.get('MyName')){
            ctx.body = ctx.cookies.get('MyName');
        }else{
            ctx.body = 'Cookie is none';
        }
    }
});

app.listen(3000,()=>{
    console.log('[demo] server is starting at port 3000');
})
上一篇下一篇

猜你喜欢

热点阅读