Spring Boot ve React ile Not Tutma Web Uygulaması — 2

Mustafa KAPLAN
2 min readFeb 12, 2021

Login Page

Uygulamaya giriş yapabilmek için giriş sayfasında veri tabanında kayıtlı olan kullanıcı adı ve parola bilgileri girilerek “Login” butonuna basılır ve giriş işlemi başarılı bir şekilde tamamlanarak kullanıcı notlarının yer aldığı sayfaya yönlendirme yapılır.

login page
Login Page

JWT Kullanımı

Backend kısmına gelen login isteğinde controller “authenticate” metodunu kullanır. Gelen kullanıcı adı veri tabanında yoksa hata fırlatılır. Eğer kullanıcı adı veri tabanında varsa şifrelenmiş parolanın doğruluğu kontrol edilir. Parola da doğruysa JWT kullanılarak bir token oluşturulur ve gelen isteğe yanıt olarak oluşturulan token ve kullanıcı bilgileri döndürülür.

jwt
JWT ile Token Oluşturma

Login isteğine cevap olarak “AuthResponse” sınıfı döner. Oluşturulan token ve user bilgilerini içeren “UserVM” sınıfı bu kısımda yer almaktadır.

spring boot auth response
Auth Response

Kullanıcının tüm bilgilerini cevap olarak göndermemek için “UserVM” sınıfı kullanılır. Burada sadece username ve fullName bilgisi yanıta eklenir.

spring boot user vm
User VM

Token Filter

Gelen isteklerde “TokenFilter” sınıfı çalışır ve eğer başlıkta “Authorization” kelimesi varsa token inceleme işlemi yapılır. İşlemler başarılı olursa kullanıcı token bilgisi doğrulanmış olur.

spring boot jwt token filter
Token Filter

Token Filter sınıfı içerisinde “getUserDetails” metodu kullanılır. Token içerisinden alınan kullanıcı id bilgisi bu sınıfta veri tabanı ile doğrulanır. Veri tabanında ilgili id bilgisine sahip bir kullanıcı yoksa işlem başarısız olur.

spring boot get user details
getUserDetails Metodu

--

--