koa中的cookie使用

2019-11-21  本文已影响0人  Wrestle_Mania
const Koa = require("koa");
const path = require("path");
const Router = require("koa-router");

const render = require("koa-art-template");

const app = new Koa();
const router = new Router();

render(app, {
  root: path.join(__dirname, "views"),
  extname: ".html",
  debug: true
});

router.get("/", async (ctx, next) => {
  ctx.cookies.set("userinfo", "JonSnow", {
    maxAge: 10 * 1000
  });
  await ctx.render("index");
});

router.get("/news", async (ctx, next) => {
  const userinfo = ctx.cookies.get("userinfo");
  await ctx.render("news", {
    name: "JonSnow",
    userinfo
  });
});

app.use(router.routes()).use(router.allowedMethods());

app.listen(8080);

有一个问题,无法存储中文,可通过Buffer将汉字转换为base64进行存储

options 名称 options 值
maxAge 一个数字表示从 Date.now() 得到的毫秒数
expires cookie 过期的 Date
path cookie 路径, 默认是'/'
domain cookie 域名
secure 安全 cookie 默认 false,设置成 true 表示 只有 https 可以访问
httpOnly 是否只是服务器可访问 cookie, 默认是 true
overwrite 一个布尔值,表示是否覆盖以前设置的同名 的 cookie (默认是 false). 如果是 true, 在同 一个请求中设置相同名称的所有 Cookie(不 管路径或域)是否在设置此 Cookie 时从 Set-Cookie 标头中过滤掉。
上一篇 下一篇

猜你喜欢

热点阅读