I've been using window.localstorage to save some data without problem, the data was persisting between sessions.
I decided to switch to using cookies, using 'react-cookie', code as follows:
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: '/' });
}
}
If I call 'setToken' the value set persists, however if I close the brower and open it again that data is lost.
My root render function has the cookies provider as per the webpage 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>
You can let sites remember information during your browsing session, but automatically delete the cookies when you close Chrome. On your computer, open Google Chrome. Settings. Cookies and other site data.
Google chrome has a cap on the number of cookies it allowed per domain . Once the total number of cookies in that domain exceeds that count, it deletes cookies!
Session cookies – text files that are stored in a temporary folder. Session cookies do not collect your personal data and are deleted when your browsing session ends.
The default cookie lifetime is “session”. You should set a maxAge
:
this.cookies.set(Auth.STORAGE_KEY, token,
{ path: '/', maxAge: 31536000 });
It’s in seconds.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With