it-swarm.com.de

Angular2-Cookies anstelle von Localstorage

Ich habe es geschafft, alle Arbeiten als JWT-Auth auszuführen, keine Probleme dort, aber es unterstützt nur moderne Browser, und ich brauche Auth, um ab IE9 und darüber zu arbeiten.

Ich konnte keine Informationen oder Beispiele zur Verwendung von Cookies in Angular2 finden. Es gibt ein einfaches Beispiel, in dem localStorage zum Speichern von Token verwendet wird. Ich benötige die gleiche Funktionalität, jedoch mit Cookies.

Jede Hilfe wäre großartig, da es hier nichts im Internet gibt.

this.http.post("http://localhost:3001/sessions/create", creds, { headers: header })
    .map(res => res.json())
    .subscribe(
      data => localStorage.setItem('id_token',data.id_token),
      err => this.logError(err),
      () => console.log("Auth is completed!")
    );
20
Milan Milanovic

Ein einfacher Weg, dies zu lösen, ist die Verwendung dieser Bibliothek:

https://www.npmjs.com/package/ng2-cookies

Um diese Bibliothek zu installieren, führen Sie Folgendes aus:

$ npm install ng2-cookies

Verwendungszweck:

import { Cookie } from 'ng2-cookies/ng2-cookies';

Cookie.set('cookieName', 'cookieValue');
Cookie.set('cookieName', 'cookieValue', 10 /*days from now*/);
Cookie.set('cookieName', 'cookieValue', 10, '/myapp/', 'mydomain.com');

let myCookie = Cookie.get('cookieName');

/*
* List of cookies as Object, like: { cookieName: "cookieValue", cookieName2: "cookieValue2" ... etc }
*/
let cookielist = Cookie.getAll();

Cookie.delete('cookieName');
Cookie.deleteAll();
30
Exdcarca

Ich habe den Cookie-Dienst mit den Funktionen von Angular 1 bis Angular 2 als injizierbarer Dienst implementiert. Fügte auch eine removeAll-Funktion als Plus hinzu. Sie können es bekommen mit:

npm install angular2-cookie --save

Nachdem Sie es als Dienst injiziert haben, können Sie die Methoden wie in Angular 1 verwenden:

this._cookieService.get(key);
this._cookieService.getObject(key);
// Other available methods are
// put(), putObject(), remove() and removeAll()

Sie können den Readme-Teil auf Beispiele und verfügbare Funktionen überprüfen.

https://github.com/salemdar/angular2-cookie

4
s.alem

Für die Verwendung von Cookies in angular zuerst den Befehl npmnpm install angular2-cookie --save Ausführen,
Nach dem Einspritzen Ihres Dienstes in app.module.ts Hinzufügen

import { CookieService } from 'angular2-cookie/services/cookies.service';

oder Dienst im Anbieter hinzufügen,

 providers: [CookieService]

nach dem Hinzufügen eines Cookies zu Ihrer Komponente, die Sie verwendet haben, gibt es 7 Methoden für Cookies
1.) get():- This method returns the value of given cookie key.
2.) getObject() :- This method is returns the desterilized value of given cookie key.
3.) get all():- This method returns a key-value object with all the cookies.
4.) put():- This method is used to set a value for given cookie key.
5.) putObject():- This method is used to serializes and set a value for given cookie key.
6.) remove(): -This method is used to remove given cookie.
7.) remove all(): -This method is used to remove all cookies.

für das Setzen/Setzen von Werten in einem Cookie: this._cookieService.put('key:string', 'value:string'); Geben Sie hier den Namen Ihres Cookies ein, z. B .: user1 und der Wert ist für das Setzen von any value.

um einen Wert in einem Cookie zu erhalten: this._cookieService.get('key');

zum Entfernen von Cookies von der Komponente dann this._cookieService.remove('key');

1
Brijesh Mavani