web-dev-qa-db-ja.com

Jqueryで1分または30秒後に有効期限が切れるようにCookieを設定するにはどうすればよいですか?

30秒または1分後にCookieが期限切れになるように設定するにはどうすればよいですか?これは私のコードです:

$.cookie('username', username, { expires: 14 });  // expires after 14 days
14
Attila Naghi

1分間、次を使用できます。

var date = new Date();
date.setTime(date.getTime() + (60 * 1000));
$.cookie('username', username, { expires: date });  // expires after 1 minute

30秒間、次を使用できます。

var date = new Date();
date.setTime(date.getTime() + (30 * 1000));
$.cookie('username', username, { expires: date });  // expires after 30 second
27
Felix

出典: http://www.informit.com/articles/article.aspx?p=24592&seqNum=

見積もり:

有効期限は秒単位で作成する必要があります(それだけでなく、1970年1月1日から秒単位で指定する必要があります)。 1970年1月。ここに、time()関数があります。

Time()関数は、1970年1月1日からの秒数を返します。30日で期限切れになるCookieを作成する場合は、次のことを行う必要があります。

  • 1970年からの秒数を取得します。

  • Cookieを持続させる秒数を決定します。

  • 1970年からの秒数を、Cookieを持続させる秒数に追加します。

1日は86,400秒(60秒x 60分x 24時間)であることがわかっているため、次のように30日で期限切れになるCookieを作成できます。

setcookie("username", "chris", time() + (86400 * 30));

この関数は、ユーザーのブラウザーにCookieを30日間保存します。 30日間はいつでも、スクリプト内から変数$ usernameにアクセスでき、(上記の例では)chrisを返します。

3
Sebastian Norr
var date = new Date();
date.setTime(date.getTime() + (30 * 1000)); //add 30s to current date-time 1s = 1000ms
$.cookie('username', username, { expires: date });  //set it expiry

1 minute and 30 secondsは以下のように使用できます。

 var date = new Date();
 var minutes = 1.5;
 date.setTime(date.getTime() + (minutes * 60 * 1000));
 $.cookie('username', username, { expires: date });

//3.5* 60 * 1000 = 1 minute and 30 seconds

// 30秒間

  var date = new Date();
 var minutes = 0.5;
 date.setTime(date.getTime() + (minutes * 60 * 1000));
 $.cookie('username', username, { expires: date });
2
Butani Vijay