Bu proje, Node.js kullanılarak geliştirilmiş bir üyelik sistemi API'si sağlar. JSON Web Token (JWT) kullanılarak kimlik doğrulama ve yetkilendirme sağlanır. Kullanıcı kaydı, girişi, profil bilgilerinin alınması, şifre sıfırlama gibi işlemleri gerçekleştirebilirsiniz.
- Node.js
- Express.js
- MongoDB
- JWT (JSON Web Token) ile kimlik doğrulama
- bcrypt ile şifreleme
- Joi ile veri doğrulama
- Nodemailer ile e-posta gönderme
- express-rate-limit ile API isteklerinin sınırlanması
- express-mongo-sanitize ile MongoDB sorgularının güvenli hale getirilmesi
- cors ile Cross-Origin Resource Sharing (CORS) yönetimi
- Projeyi klonlayın:
git clone https://github.com/sencerarslan/nodejs-JWT-membership-api.git
- Proje dizinine gidin:
cd nodejs-auth-app
- Gerekli bağımlılıkları yükleyin:
npm install
.env
dosyasını oluşturun ve gerekli ortam değişkenlerini ayarlayın (örneğin, veritabanı bağlantısı, JWT anahtarı, e-posta hesabı vb.).- Uygulamayı başlatın:
npm start
POST /api/login
: Kullanıcı girişi içinPOST /api/register
: Kullanıcı kaydı içinGET /api/me
: Mevcut kullanıcı bilgilerini getirirGET /api/users
: Tüm kullanıcıları getirir (Yönetici için)POST /api/forget-password
: Şifreyi sıfırlamak için sıfırlama kodu oluşturur ve e-posta gönderirPOST /api/reset-code-check
: Sıfırlama kodunun doğruluğunu kontrol ederPOST /api/reset-password
: Şifreyi sıfırlar