开发者

chrome Extension : Set persistent cookie in chrome extension?

I am working with chrome extension development here I need to set cookie value by my extension.

I have set cookies by:

chrome.cookies.set({ url: "http://example.com/", name: "CookieVar", value: "123" });

But it available in the current browser when I close the browser data was lost so that I go with

chrome.cookies.set({ url: "http://example.com/", name: "CookieVar", value: "123", expirationDate: 3600 });

But from开发者_运维百科 this I am not able to see cookie information is anything I have missed here.


It seems that your expiration date is 1 Jan 1970 01:00 (3600 equals 1 hour after UNIX epoch). So of course your cookie will be deleted because it's expiration date is set to the past.

You need to provide appropriate expirationDate for your cookie. In documentation, expirationDate defined as:

The expiration date of the cookie as the number of seconds since the UNIX epoch

To set a cookie relative to the current time you need to add seconds to (new Date().getTime() / 1000) as @pickled suggested.


If you don't set a value for expirationDate then the cookie will expire when the user closes the browser.

If you do set a value then it must be the current time + how many seconds until it expires. For example:

{expirationDate: (new Date().getTime()/1000) + 3600}

would set it as the current time, plus 3600 seconds, so an hour in the future.

You were setting it as 3600 past the base UNIX time, which is the start of 1970, so it immediately expired.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜