Angular SPA'mda bir JWT jetonunu saklaması gereken bir kimlik doğrulama hizmetim var. Böylece her seferinde başlıklara sunucuya geri gönderilebilir (API, kendi içinde bulunmasını gerektirir) Kimlik Doğrulama-Token başlıklı)Angular SPA'da kimlik bilgileri kaydetme
Şu an hizmetim hatıralarımı hafızada tutuyor, ancak bu sayfa yenilendiyse yeni bir oturum açmayı gerektiriyor ya da yeni bir sekmede bir sayfa açıyor, bu yüzden ayrıntılarını saklamam gerekiyor. biraz daha kalıcı. Görebildiğim kadarıyla bir kaç seçeneğim var ama bunların hiçbiri ideal değil
A) - Onları bir çerezde saklayın - Ama sonra her istek ile birlikte iki kez gönderilecek ve kullanıcı profili gibi diğer veriler yanında saklanması gereken veriler.
B) Yerel Depolama - Bu iyi bir seçenek gibi gözüküyor, ancak bir sınırı var ve dolu ise (bir veri önbellekleme servisinin dolduracağını söyleyebiliriz) o zaman ayrıntıları saklayamayacaktır. güvenilir
c) Oturum Depolama çevreleme için, kullanıcının tüm ayrıntıları saklamak için yeterli alan hiçbir şekilde var gibi gözüküyor -) Yukarıdaki gibi fakat çalışmıyor kullanıcı yeni bir sekme
d açarsa Var Her sayfadaki sunucudan gönderilen ayrıntılar yüklenir ve API'ye yapılan çağrılar yapılmadan önce bellekte saklamak için ng-init kullanılır. Bu iyi olurdu, ama benim sitem şu anda bir API çağırır düz bir HTML sitesi, şu anda bir PHP/Düğüm/.net sitesi değil, bu yüzden jeton almak için sunucu tarafı şeyler tanıtmak zorunda kaldım.
Peki, herhangi birinin daha iyi bir fikri var mı? Ya da bu sorunlardan herhangi biriyle çalışmanın herhangi bir yolu var mı?
Benzer bir sorunla karşılaştık, kullanıcının süresiz olarak oturumda kalmasına izin veren bir gereksinimimiz vardı. Yerel Depolama'yı kullandık ve bir çerez tabanlı yenileme simgesiyle destekledik. Bir 403 meydana geldiğinde, http interceptor, yenileme jetonu çerezini kullanarak yeni bir jetonu yeniden talep edecektir. –