当我关闭浏览器时,Cookies 会被删除吗?
Cookies are deleted when I close the browser?
我一直在使用 window.localstorage 毫无问题地保存一些数据,数据在会话之间持续存在。
我决定改用cookies,使用'react-cookie',代码如下:
import Cookies from 'react-cookie';
export default class Auth {
static STORAGE_KEY: string = "token";
static cookies = new Cookies();
public static getToken() {
var toRet = this.cookies.get(Auth.STORAGE_KEY);
return toRet;
}
public static setToken(token: string) {
this.cookies.set(Auth.STORAGE_KEY, token, { path: '/' });
}
public static removeToken(): void {
this.cookies.remove(Auth.STORAGE_KEY, { path: '/' });
}
}
如果我调用 'setToken',值集仍然存在,但是如果我关闭浏览器并再次打开它,数据就会丢失。
我的根渲染函数有网页上的 cookies 提供程序 https://www.npmjs.com/package/react-cookie:
import { CookiesProvider } from 'react-cookie';
export class Layout extends React.Component<{}, {}> {
public render() {
return <CookiesProvider> ( some stuff ) </CookiesProvider>
默认的 cookie 生命周期是“session”。你应该设置一个 maxAge
:
this.cookies.set(Auth.STORAGE_KEY, token,
{ path: '/', maxAge: 31536000 });
以秒为单位。
我一直在使用 window.localstorage 毫无问题地保存一些数据,数据在会话之间持续存在。
我决定改用cookies,使用'react-cookie',代码如下:
import Cookies from 'react-cookie';
export default class Auth {
static STORAGE_KEY: string = "token";
static cookies = new Cookies();
public static getToken() {
var toRet = this.cookies.get(Auth.STORAGE_KEY);
return toRet;
}
public static setToken(token: string) {
this.cookies.set(Auth.STORAGE_KEY, token, { path: '/' });
}
public static removeToken(): void {
this.cookies.remove(Auth.STORAGE_KEY, { path: '/' });
}
}
如果我调用 'setToken',值集仍然存在,但是如果我关闭浏览器并再次打开它,数据就会丢失。
我的根渲染函数有网页上的 cookies 提供程序 https://www.npmjs.com/package/react-cookie:
import { CookiesProvider } from 'react-cookie';
export class Layout extends React.Component<{}, {}> {
public render() {
return <CookiesProvider> ( some stuff ) </CookiesProvider>
默认的 cookie 生命周期是“session”。你应该设置一个 maxAge
:
this.cookies.set(Auth.STORAGE_KEY, token,
{ path: '/', maxAge: 31536000 });
以秒为单位。