Maison > Questions et réponses > le corps du texte
Le cookie stocke une information de participation de l'utilisateur. Ces informations devraient être valides aujourd'hui et expirer après 24h00 ?
.巴扎黑2017-05-15 16:57:13
Ce que je dis ci-dessous sont tous exploités en version Angular 1.4.x.
1. Vous devez d'abord charger le module ngCookies
, puis ajouter cette dépendance là où vous en avez besoin.
2. Ensuite, vous pouvez vous référer à $cookies ici pour des méthodes spécifiques.
3. La méthode générale est la suivante :
$cookies.put(key, value, [options]); // 存储一个字符串
$cookies.putObject(key, value, [options]); // 存储一个对象
$cookies.get(key); // 获取一个cookie字符串
$cookies.getObject(key); // 获取一个cookies对象
4. L'heure du cookie peut être définie par vous-même. Définissez certaines options via $cookiesProvider
Pour plus de détails, voir $cookiesProvider ici.
5. J'ai ici un petit exemple que vous pouvez consulter, démo
6. Le code spécifique est le suivant :
index.html
<body ng-app="MyApp">
<h1>Angular $cookies</h1>
<h2>打开控制台,看看Cookies</h2>
<p ng-controller="MyController as vm">
{{vm.data}}
</p>
</body>
app.js
(function(){
angular.module('MyApp', ['ngCookies'])
.config(cookiesConfig)
.controller('MyController', MyController);
cookiesConfig.$inject = ['$cookiesProvider']
MyController.$inject = ['$cookies'];
function cookiesConfig($cookiesProvider){
var date = new Date();
date.setDate(date.getDate() + 1);
var expires = date;
console.log(expires);
$cookiesProvider.expires = expires;
}
function MyController($cookies){
var vm = this;
vm.person = {
name: 'dreamapple',
age: 22,
address: 'China'
};
$cookies.putObject('person', vm.person);
vm.data = $cookies.getObject('person');
}
})();
phpcn_u15822017-05-15 16:57:13
L'heure du cookie est définie côté serveur, pas sur la page Web. Le côté serveur est simple. Calculez simplement l'heure d'expiration. S'il s'agit de Java, il est recommandé d'utiliser l'heure joda. utiliser l'heure joda pour définir l'expiration de 24 points :
DateTime now = DateTime.now();
DateTime endOfToday = now.withTimeAtStartOfDay().plusDays(1);
Cookie cookie = new Cookie(key, value);
cookie.setMaxAge(Seconds.secondsBetween(now, endOfToday).getSeconds());
cookie.setDomain(domain);
cookie.setPath("/");
response.addCookie(cookie);