Aks*_*rma 37 angular-cookies angular angular6
如何在Angular 6中创建cookie,对于AngularJS有ngcookie在Angular 6中创建cookie的最佳方法是什么.
M.L*_*ida 60
npm install ngx-cookie-service --saveimport { CookieService } from 'ngx-cookie-service';来自CookieService;cookie.get(nameOfCookie)到模块的提供者.cookie.set(nameOfCookie,cookieValue)为获得特定的Cookie,使用npm install ngx-cookie-service --save添加新的Cookie.bvd*_*vdb 26
首先,你应该问自己:"我真的需要饼干吗?" :
Cookie曾经用于一般客户端存储.虽然这是在客户端上存储数据的唯一方法,但这是合法的,现在建议更喜欢现代存储API.Cookie随每个请求一起发送,因此可能会降低性能(尤其是移动数据连接).用于客户端存储的现代API是Web存储API(localStorage和sessionStorage)和IndexedDB.(来源:MDN)
因此,如果您还没有,则可能需要阅读有关Web Storage API的信息.
如果您想继续使用cookies,请继续阅读.
我试过ngx-cookie-service,它对我不起作用.我在问题发生后有问题,最后在github上讨论它,尝试更新软件包.我花了大约一天的时间才意识到我需要的东西并不是那么复杂,毕竟获取/设置cookie只是一个原生的javascript事情.
我没有时间浪费了,CookieService自己也写了这么简单.我只是想与其他绝望的开发者分享.:)
我创建了这个要点,它是ngx-cookie-service的轻量级替代品.
当然你需要在你的app.module.ts文件中注册它.将其添加到您的提供商列表:
providers: [FooService, BarService, CookieService]
Run Code Online (Sandbox Code Playgroud)
接下来,在组件中使用它,例如如下:
private _sessionId: string;
constructor(private cookieService: CookieService) {
this._sessionId = cookieService.get("sessionId");
}
public set sessionId(value: string) {
this._sessionId = value;
this.cookieService.set("sessionId", value);
}
Run Code Online (Sandbox Code Playgroud)
请注意,您可以使用调试工具来验证cookie是否已实际设置,并验证它是否存在于后续HTTP请求中.(Chrome的屏幕截图,但Firefox和Edge有类似的概述)
| 归档时间: |
|
| 查看次数: |
65749 次 |
| 最近记录: |