يحتوي هذا المستودع على تطبيق ASP.NET Core WebAPI الذي ينفذ مصادقة JWT ، وهو تطبيق .NET MAUI للواجهة الأمامية الإدارية التي تستهلك WebAPI المحمية.
repository
|__src
| |__Foody -> web api project
| |__client -> maui project
| |__.gitignore
|__.gitignore
|__ReadME.md
يمكن تشغيل المشروع محليًا أو على مساحات الترميز.
بعض المتطلبات وأعباء العمل للتثبيت:
افتح موجه الأوامر (Windows) أو Terminal (MAC) وأدخل استنساخ المستودع:
git clone https://github.com/coderBane/food-web-app.git
افتح المستودع في مساحات الترميز من خلال النقر على قائمة القائمة المنسدلة في الكود وتحديد مساحات الترميز
نحن بحاجة إلى إعداد بعض الأشياء أولاً قبل تشغيل المشاريع.
dotnet ef dotnet tool install -- global dotnet - efإنشاء مثيل حاوية redis
docker run --name redis-cache -p 6379:6379 -d redis
إنشاء مثيل حاوية
docker run --name postgresql -e POSTGRES_PASSWORD=<yourpassword> -p 5432:5432 -d postgres
تشغيل PSQL
docker exec -it postgresql psql -U postgres
أولاً سنحتاج إلى إنشاء دور جديد. الدور سيكون له تسجيلات تسجيل الدخول وإنشاء قاعدة البيانات.
CREATE ROLE devuser WITH LOGIN CREATEDB PASSWORD '<yourpassword>';
قم بالتبديل إلى المستخدم الجديد
c postgres devuser
إنشاء قاعدة البيانات
CREATE DATABASE foody;
NOTE: You can run the command l to view all existing databases
قبل أن نتمكن من تشغيل المشروع ، نحتاج إلى تكوين بعض الأشياء في واجهة برمجة تطبيقات الويب. افتح ملف foody.webapi.csproj وحذف خاصية المستخدمين ustervecretsid .
افتح محطة أو موجه أوامر جديد وقم بتغيير الدليل إلى مجلد foody.webapi.
قم بتشغيل الأمر:
dotnet user-secrets init
إنشاء سلسلة عشوائية باستخدام هذا الموقع عشوائي.
قم بإنشاء ملف جديد "S.Json" وملءه بما يلي
{
"JwtConfig": {
"Secret": "<generatedstring>",
"ExpiryTimeFrame": "00:01:00"
},
"WatchDog": {
"Username": "<yourusername>",
"Password": "<yourpassword>"
},
"Redis": "localhost",
"Postgres": "Server=localhost:5432;Database=foody;User Id=devuser;Password=<devuserpassword>;Integrated Security=true;Pooling=true;",
"UserPW": "<yourpassword>"
}
اضبط أسرار المستخدم
cat ./s.json | dotnet user-secrets set
NOTE: You can delete the s.json file
نحن بحاجة إلى إنشاء الجداول في قاعدة البيانات.
dotnet ef --startup-project ../Foody.WebApi database update
يمكننا الآن تشغيل المشاريع
إطلاق دون تباهي
dotnet run
إطلاق مع Swagger UI
dotnet watch