我需要检索显示在我的URL上的所有cookie。
const allCookies = this.cookieService.getAll();
console.log('allcookies',allCookies);
请找到所附的屏幕截图,我要从其中获取google.com
,localhost
和其他提供商(如果有)的所有cookie。
但是首先,我想知道是否有可能?
答案 0 :(得分:0)
您可以尝试以下操作:
在您的服务的构造器中
constructor(
@Inject( DOCUMENT ) private document: any,
@Inject( PLATFORM_ID ) private platformId: InjectionToken<Object>,
) {
this.isBrowser = isPlatformBrowser( this.platformId );
}
然后是类似的方法
getAll(): {} {
if (!this.isBrowser) {
return;
}
const _cookies: {} = {};
if ( this.document.cookie) {
const splittedCookies: string[] = this.document.cookie.split(';');
for ( let i = 0; i < splittedCookies.length; i++ ) {
const cookies: string[] = splittedCookies[ i ].split('=');
cookies[ 0 ] = cookies[ 0 ].replace( /^ /, '' );
_cookies[ decodeURIComponent( cookies[ 0 ] ) ] = decodeURIComponent( cookies[ 1 ] );
}
}
return _cookies;
}