صباح الخير ، مساء الخير أو ليلة سعيدة. هذا المشروع هو مدير مجموعة مكتبة ETEC Aristotle Ferreira School School
في هذا المستودع سيكون هناك ثلاثة مشاريع:
حاليا يكمل جزئيا واجهة برمجة تطبيقات GIB الداخلية المصنوعة في GRPC. من الممكن إجراء اختبارات الوحدة للمشروع.
يمكنك تشغيل واجهة برمجة التطبيقات بطريقتين: استخدام بيئة الماكينة أو استخدام Docker. من الأفضل استخدام Docker إذا كان قد تم تثبيته بالفعل أو غير قادر على تثبيت متطلبات التنفيذ في بيئة الجهاز.
قد يكون ذلك ، بسبب النطاق الترددي ، يستغرق وقتًا لتثبيت الصور والحزم.
للتنفيذ في بيئة محلية ، هناك المتطلبات التالية:
من الضروري أنه قبل التنفيذ ، قم بتكوين الملف ./src/LivrEtec.GIB.Servidor/appsettings.json
أوصي بنسخ الملف استخدم على سبيل المثال ملف AppSettings المستخدم في Docker.
بعد تكوين المشروع ، تقوم بفتح المشروع في Visual Studio واختيار livretec.gib.servator كمشروع بدء ، أو تشغيله على محاكي طرفي في ./src/LivrEtec.GIB.Servidor
dotnet runقد يحدث خطأ إذا لم يتم تكوين AppSettings بشكل صحيح ، مثل سلسلة الاتصال أو المنفذ غير الصالح. في حالة حدوث أي خطأ ، أشعر بالراحة لنشر
لتشغيل الخادم باستخدام Docker بسيط ، ما عليك سوى تشغيل الأمر التالي في مجلد ./src
docker compose --profile backend up --buildكما هو مذكور سابقًا ، حيث من الضروري تنزيل الصور والحزم ، قد يستغرق Nuget دقائق لتنزيلها اعتمادًا على شريط الإنترنت الخاص بك.
بعد تنفيذ المشروع ، سيبلغ الأبواب التي يستمع إليها. نظرًا لأن شهادات SSL لم يتم تكوينها بعد ، يوصى باستخدام معايير HTTP.
لإجراء مكالمات إلى API ، اختر عميل GRPC اختيارك.
بعض البدائل هي الأرق أو ساعي البريد.
ملف API proto هو في ./src/livretec.gib/protos/acervo.proto.
بعد ذلك ، من الضروري تسجيل الدخول إلى API من خلال طلب login في GerenciamentoSessao . مطلوب تسجيل الدخول لتسمية تسجيل الدخول وجهاز كلمة المرور ، ولكن في المرة الأولى التي تبدأ فيها الخادم ، فإنه سيقوم بإنشاء مستخدم مع مستخدم مع admin:senha id 1.
يجب إنشاء تجزئة كلمة المرور على النحو التالي:
md5(senha + id).
لذلك يجب أن يكون الطلب على النحو التالي:
{
"IdUsuario" : 1 ,
"HashSenha" : " 92f20dafc5e5ac1c66820903c492cc04 "
} وبعد ذلك ستعيد رمز JWT ، الذي يجب إضافته إلى الرأس على النحو التالي: Authorization: Bearer <JWT Token>
حسنًا ، سيكون لديك الآن الوصول إلى بقية واجهة برمجة التطبيقات كمسؤول.
مثلما يمكن اختبار واجهة برمجة تطبيقات GIB في البيئة المحلية و Docker ، ومع ذلك ، يمكنك إجراء بعض الاختبارات بدون خادم MySQL مثبت.
تنقسم الاختبارات إلى قسمين:
لإجراء الاختبارات المحلية فقط ، ببساطة قمت بتثبيت .NET 6.0.0 وفي المجلد ./src/
dotnet test LivrEtec.sln --filter Category=local إذا كنت تستخدم Visual Studio افتح مدير الاختبار وقم بتشغيل فئة الاختبار local
لإجراء الاختبارات عن بُعد أيضًا ، يجب عليك أولاً تشغيل خادم GIB. بمجرد تنفيذك ، تحتاج إلى إنشاء وتكوين ملف ./src/LivrEtec.Testes/appsettings.json .
انسخ ملف appsettings.modelo.json ، وقم بملء نفس المعلومات التي تملأ تطبيقات تطبيقات خادم GIB ، وكذلك إضافة رابط الخادم ، إذا ظهر الرابط في هذا التنسيق:
http://[::]:21312يعني نفسhttp://localhost:21312
وبعد تكوين الخادم والاختبارات لتنفيذ المشروع ، فقط قم بتشغيل الأمر التالي في دليل ./src/
dotnet test LivrEtec.slnفي Visual Studio ، فقط افتح مدير الاختبار وانقر فوق Run.
إذا كنت ترغب في استخدام Docker ، فما عليك سوى الانتقال إلى المجلد ./src/ وقم بتشغيل الحاويات مع الأمر التالي:
docker compose --profile teste up --build
--buildهو التأكد من تنفيذ الحاوية بأحدث الكود.
بعد إجراء الاختبارات ، ستستمر حاوية قاعدة البيانات في التشغيل. إذا كنت ترغب في الخروج تلقائيًا بعد الاختبارات ،
--exit-code-from appكعلامة في الأمر.
التصميم متاح على https://figma.com/community/file/1176031299741420547
كل المساعدة موضع ترحيب إذا كنت تريد التعاون. نوصيك بالذهاب أولاً إلى (wiki) [./ wiki/ projects of projects] وقراءة القليل للحصول على نظرة عامة على المشروع ، ثم ابحث عن (.
لمزيد من المعلومات حول المشروع ، راجع وثائقنا.
مرحباً :)