- Login - Register İşlemleri
- Ad-Soyad, Email ve Şifre ile kayıt yapılabilen bir register api
Burada kontrol edilmesi gereken tek şey aynı email'e sahip başka bir kullanıcının olup-olmayışı ve email-validation
-
Email ve Şifre ile giriş yapılabilen bir login api
Login api'si iki aşamadan oluşacaktır
Kullanıcı Email ve Şifresini bir servise gönderir. Servis başarılı bir sonuç verirse bir refresh token ile response döner. Response ile gelen refresh token kullanım süresi 6 aydır.
Kullanıcı bu refresh token ile jwt-token talep eder. Bu jwt-token'in kullanım süresi sadece 15 dk'dır, kullanım süresi dolduğunda başka bir işlem yapılacaksa refresh token ile yeniden jwt-token talep edilir
- Takipleşme Kurgusu için gerekli api
- Kayıtlı olan bir kullanıcı, kayıtlı olan bir başka kullanıcıya takip isteği gönderir.
Takip edilen kullanıcıya RabbitMQ kullanılarak işlem kuyrugu convansiyonuna göre takip bilgisi için mail gönderimi sağlanır.
- Ruby version = ruby 3.0.0
- Rails version = 6.1.1
- Authentication: JWT
- Database = Postgresql
Register API | Login API | JWT API | Follow API | RabbitMQ |
---|---|---|---|---|
✔️ | ✔️ | ✔️ | ✔️ | 🕒 |
Kullanıcı Kayıt olur
Parolayı boş ve email adresini hatalı girer
Benzer mail adresi girer
Mailini veya şifresini yanlış girer
Başarılı bir giriş yapar ve 6 aylık refresh token alır
Refresh token kullanarak, 15 dakikalık access token alır
Access Tokenı alma esnasında, Refresh Tokenı hatalı girer
Loginde ne refresh token ne de email girer
Access Tokenı Http isteklerinin Header kısmına yazar ve bu şekilde tüm isteklerde Authorization işlemi gerçekleşir
Access Token girmezse
Access Token 15 dk lık süresi dolarsa
Access Token ile tüm kullanıcıları listeleyebilir
Access Token ile belirli bir kişiye bakabilir
Access Token ile belirli bir kişiyi güncelleyebilir
Access Token ile belirli bir kişiyi silebilir
Access Token ile kimliği belli olan kullanıcı, takip isteği atmak istediği kişinin sayfasına gelerek GET isteği atar. Bu şekilde takip isteği gönderilmiş olur.