我正在设置一个以Koa作为后端的Vue应用程序。我已经实现了一个简单的登录系统,使用koa-session进行会话。当我直接访问服务器时(实际上导航到我的服务器端口并执行一个请求),这一切都很好,但是当我使用fetch从我的前端端口访问数据时,它不会将每次获取回想为相同的会话,而是每次都创建一个新会话。这是有问题的,因为它不会检测到用户正在登录。最终的结果是,每次我访问API时都会创建一个新的会话密钥,即使不刷新页面也是如此。
下面是我的Koa-session配置文件:
import Koa from "koa";
import session from "koa-session";
import { getCookie } from "../actions/getCookie";
import { setCookie } from "../actions/setCookie";
import { destroyCookie } from "../actions/destroyCookie";
export const config: Readonly<Partial<session.opts>> = {
store: {
get: getCookie,
set: setCookie,
destroy: destroyCookie
},
key: "api:sess",
maxAge: 86400000,
httpOnly: true,
renew: true,
signed: false
};
export const useSession = (app: Koa) => session(config, app);```发布于 2020-06-06 06:32:43
原来是和我一起去取的。我用credentials: "same-origin"代替了credentials: "include",这把一切都搞乱了。
https://stackoverflow.com/questions/62224572
复制相似问题