Etkilenen bileşen: Sunucu (ASP.NET Core) Mobil tarafta değişiklik gerekmez.
user_settings tablosunda her kullanıcı için bir satır olması gerekiyor, ancak bu satır
| Şimdi seninle bir projeye başlayacağız. Projemizde dotnet core 10 ve postgresql kullanacağız. Bu projemizin adı Turbohesap ve bu çözüm şimdilik 3 proje içerecek Turbohesap.Shared(Bu proje CQRS veya DTO modellerini ve servis arayüzlerini içerecek), Turbohesap.Api(Bu proje api projemiz ve dotnet core api projesi olacak, herhangi bir mimari kullanmayacağız ve dizin sistemi ile kurgulayacağız) | |
| Turbohesap.Web(Bu proje Blazor web arayüzü projemiz olacak ve Herhangi bir mimari falan içermeyecek). | |
| 1-Projemizin arayüz dili komple türkçe olacak, kodmala dili ise ingilizce olacak(Tüm entity,field,function veritabanı,tablo,field isimleri) | |
| 2-Küresel hata yakalama middleare olacak ve bu middleware yakaladığı 500 hatalarını url,ip,tarih,zaman,user-agent,headers,hata kodu,satır numarası,dosya adı,tam hata açıklaması,tekrar sayısı,hash değeri ve gerekli tüm bilgiler ile error_logs tablosuna yazacak ve bu tarz hatalar her zaman {"detail":"message"} şeklinde geriye dönecek ve bunun modeli de olacak | |
| 3-Audit işlemleri için audit. |
Bu dokuman, bu projede calisan kimlik dogrulama mimarisini birebir anlatir ve ayni yaklasimi yeni Next.js projelerine tasimak icin hazirlanmistir. Tüm kod örnekleri bu projenin gerçek çalışan kodudur.
Kapsam:
| # -*- coding: utf-8 -*- | |
| from qgis.PyQt.QtCore import QCoreApplication | |
| from qgis.core import (QgsProcessing, | |
| QgsProcessingAlgorithm, | |
| QgsProcessingParameterVectorLayer, | |
| QgsProcessingParameterField, | |
| QgsProcessingParameterFolderDestination, | |
| QgsProcessingParameterBoolean, | |
| QgsProcessingParameterCrs, |
| from django.core.management.base import BaseCommand | |
| from django.contrib.auth.models import Permission | |
| from django.contrib.contenttypes.models import ContentType | |
| import re | |
| VERB_MAP = { | |
| 'add': 'Ekleyebilir', | |
| 'change': 'Düzenleyebilir', | |
| 'delete': 'Silebilir', | |
| 'view': 'Görüntüleyebilir', |
| plugins { | |
| id 'java' | |
| id 'org.springframework.boot' version '3.5.5' | |
| id 'io.spring.dependency-management' version '1.1.7' | |
| id "com.github.bjornvester.wsdl2java" version "2.0.2" | |
| } | |
| dependencies { |
| [package] | |
| name = "deneme" | |
| version = "0.1.0" | |
| edition = "2024" | |
| [dependencies] | |
| handlebars = "6.3.2" | |
| rocket = "0.5.1" | |
| # Build profile tweaks to speed up iteration and improve release build throughput. |
| use rocket::http::Status; | |
| use rocket::response::content::RawHtml; | |
| use rocket::tokio::time::{Duration, sleep}; | |
| #[macro_use] | |
| extern crate rocket; | |
| use std::collections::HashMap; | |
| #[get("/")] |