Skip to content

186-Teleperformans-Net-Bootcamp/EmrullahYilmazBitirmeProjesi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Teleperformance .Net Bootcamp Bitirme Proesi

Bu proje Patika.dev & Teleperformance ortaklığıyla düzenlenen bootcamp bitirme projesidir.

Kullanılan Teknolojiler:

✔️ .Net 6.0 frameworkü ile Asp.Net Core Web API ve ConsoleApp kullanıldı.
✔️ Onion Architecture kullanıldı.
✔️ Postman ile API test edildi.
✔️ API'nin dışardan kullanılabilmesi için token(JWT) bazlı bir yapı geliştirildi.
✔️ Event fırlatma işlemi için RabbitMQ kullanıldı.
✔️ Veritabanı işlemleri için EntityFrameworkCore, MSSQL ve MongoDb kullanıldı.
✔️ Identity ve Authenticate kullanıldı.
✔️ Projede Unit ve Entegrasyon testi yazıldı.
✔️ InMemoryCache kullanıldı.

Proje İçeriği:

  • Özetle kullanıcıların almayı planladıkları ürünleri kaydedip takibini yapabilecekleri bir Web API.
  • Kullanıcı kaydı, girişi ve doğrulama işlemleri yapılabilmekte.
  • Kategori, başlık, ürünler(isim,miktar,tip), oluşturulma tarihi, tamamlanma tarihi ve tamamlanma durumu parametreleri Shopping List'i oluşturuyor.
  • Get, Post, Delete, Patch, Put gibi HTTP metodları ile listeler ve ürünler için işlemler yapılabilmekte.

Proje Kullanımı ve Kurulumu

  • Projeyi indirmek için :
    git clone https://github.com/186-Teleperformans-Net-Bootcamp/EmrullahYilmazBitirmeProjesi.git
  • Veritabanı oluşturmak için package manager konsolunda default project kısmında BitirmeProjesi.Persistence seçili olmalıdır. Ardından :
    update-database
  • Appsettings.json içindeki verilerin kendi bilgisayarınıza göre dizayn edilmesi lazım
    {
    "ConnectionStrings": {
        "Default": "SQL Server Connection String;"
    },
    "MongoConnectionStrings": {
        "ConnectionString": "MongoDb Connection String",
        "DatabaseName": "Veritabanı adı",
        "ShoppingListName": "ShoppingLists"
    },
    "Logging": {
        "LogLevel": {
            "Default": "Information",
            "Microsoft.AspNetCore": "Warning"
        }
    },
    "AllowedHosts": "*",
    "JWT": {
        "Audience": "http://google.com",
        "Issuer": "http://google.com",
        "Token": "This is my supper secret key for jwt"
    }
}
  • Kullanımı için projemizi derledikten sonra çalıştırıyoruz.

  • Controller metodları

  • Controller metodları

  • Kayıtlı kullanıcı girişi

  • Giriş yaptıktan sonra doğrulama yapılması ve token verilmesi

  • Tokenin type'ını Bearer Token olarak seçtikten sonra ilgili yere yapıştırılması

  • Shopping Listimizi hazırlamak için url query kısmına categoryname ve title kısmını girdikten sonra body tarafında shopping listingin oluşturulması

  • Get yaptığımızda dönen response

  • Get yaptığımızda dönen response

  • Listenin tamamlanması için Patch metoduyla iscompleted değerinin 1 verilmesi

  • Patch metoduyla eventin yakalanması ve RabbitMQ tarafından görülmesi

  • Tamamlanan listenin MongoDb tarafından kayıt alınması ve gösterilmesi

  • Doğrulamayı test etmek için token type'ını kapattıktan sonra sistemin kullanıcıyı Unauthorized etmesi

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages