Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cookies 如何在Angular 2中设置cookie的过期日期?_Cookies_Angular - Fatal编程技术网

Cookies 如何在Angular 2中设置cookie的过期日期?

Cookies 如何在Angular 2中设置cookie的过期日期?,cookies,angular,Cookies,Angular,如何向Angular 2 cookie添加到期日期。我正在尝试使用Angular 2.0.0-beta.15。当我尝试添加如下选项时: var expireDate = new Date (new Date().getTime() + (1000 * data.expires_in)); this._cookieService.put('token', this.token, {expires: expireDate}); 上面的代码引发错误,如“{expires:Date;}”类型的[ts

如何向Angular 2 cookie添加到期日期。我正在尝试使用Angular 2.0.0-beta.15。当我尝试添加如下选项时:

var expireDate = new Date (new Date().getTime() + (1000 * data.expires_in));

this._cookieService.put('token', this.token, {expires: expireDate});
上面的代码引发错误,如“{expires:Date;}”类型的[ts]参数不能分配给“CookieOptions参数”类型的参数

类型{expires:Date;}中缺少属性“path”。(本地变量) 过期日期:日期“


我可以看到全局覆盖默认选项。我怀疑这是否是将有效期添加到cookie的方法?有人能帮我了解更多吗?

我成功地使用了这个库:。按如下方式使用,并设置有效期:

  • 包括库:

    从“ng2 cookies/ng2 cookies”导入{Cookie}

  • 设置过期日期为365天的cookie:

    setCookie(“Cookie键”,“Cookie值”,365)


  • 有点晚了,但应该是这样的

    let key = 'testCookieKey'; 
    let value = 'testCookieValue';
    let opts: CookieOptionsArgs = {
        expires: new Date('2030-07-19')
    };
    cookieService.put(key, value, opts);
    

    希望

    对于set cookies中的expiration date参数,其值应为秒到天计算

    i、 e.2分钟=(2/1440)

    //使用2分钟

    auth-cookies.ts


    我发布得太晚了,但希望这会有用。

    我认为所有参数都是必需的。当我添加所有参数时,错误消失了。不可能只向cookie添加一个参数吗?我建议使用angular2 rc3,然后使用angular2 cookie的1.2.x版本
    请使用angular2 beta的1.1.x版本,1.2.x版本用于候选发行版。
    您从何处导入CookieOptions参数?导入后需要安装angular2 cookie npm来自“angular2 cookie/core”的{CookieService,CookieOptionsArgs};
    import { Injectable } from '@angular/core';
    import { Cookie } from 'ng2-cookies/ng2-cookies';
    
    @Injectable()
    export class AuthCookie {
        constructor() { }
    
        getAuth(): string {
            return Cookie.get('id_token');
        }
    
        setAuth(value: string): void {
            //0.0138889=20 minuts 
            //this accept day not minuts
            //use for 20 minuts
            Cookie.set('cookie_token', value, 0.0138889);
            //use for 2 minuts
         //  Cookie.set('cookie_token', value,0.00138889)
        }
    
        deleteAuth(): void {
            Cookie.delete('id_token');
        }
    }