مستقبل التكنولوجيا مستقبل التكنولوجيا

آخر الأخبار

جاري التحميل ...

أنشئ تطبيق REST API باستخدام Golang

 أنشئ تطبيق REST API باستخدام Golang




في هذه المدونة ، ستتعرف على RestAPI وكيفية إنشاء RestAPI في Golang. في هذا البرنامج التعليمي ، سأستخدم Gin Web Framework ، والذي سيكون هناك شرح حوله في المدونة أيضًا. هناك بعض المفاهيم التي يجب أن تكون مستعدًا بها للحصول على فهم أفضل للمشروع الذي ذكرته في جزء المتطلبات الأساسية أدناه. الآن ، دعنا ننتقل إلى بناء مشروعنا.

المتطلبات الأساسية

● يجب أن يكون لديك وضوح بشأن المفاهيم مثل الهياكل ، والشرائح ، والحزم.
● تحتاج إلى تنزيل تطبيق Postman للتحقق مما إذا كانت API تعمل بشكل صحيح أم لا.
● أنت بحاجة إلى حساب نشط في MongoDB Atlas.
● برنامج Go مثبت في نظامك.
● IDE مثل محرر كود VS

فهم RestAPI

قبل كتابة الكود ، يجب أن تفهم ما هو RestAPI. API لتقف على واجهة برمجة التطبيقات. بكلمات بسيطة ، دعونا نفهم المفهوم من خلال مثال. لنفترض أنك تريد شراء تأمين لسيارتك من شركة تأمين تُدعى "ABG Corporation" ، لإصدار بوليصة ، تريد ABG Corp الحصول على معلومات في الوقت الفعلي عن سيارتك ومعلوماتك أيضًا للتحقق من مصداقيتك. لذلك ، سيطلب بيانات من خادم سلطة تسجيل السيارة ووكالات الائتمان والبنوك والمؤسسات الأخرى حسب الحاجة. يحدث كل هذا في الوقت الفعلي لاستنتاج ما إذا كان بإمكان ABG corp إصدار السياسة لك أم لا. لذلك تعمل API هنا كرسول في هذه السيناريوهات وتساعد في التواصل بين الأطراف الداخلية والخارجية بطريقة متسقة.

إطار عمل ويب الجن

كما هو معروف ، يمكنك إنشاء تطبيق ويب باستخدام GoLang. في تطبيق الويب ، يقوم العميل (الواجهة الأمامية) بإجراء طلب HTTP ، ثم يقوم الخادم (النهاية الخلفية) بإرجاع المعلومات ردًا. يمكن أن تكون الاستجابة من أي نوع مثل XML ، و JSON ، و HTML ، وما إلى ذلك. تعتبر عملية الطلب والاستجابة هذه جزءًا مهمًا للغاية في الحفاظ على النظام بأكمله ، ولهذا ، نستخدم حزمة "net / http" في برنامج Golang الخاص بنا . هذه الحزمة مفيدة ولكنها ليست للبرامج المعقدة. هنا يأتي دور Gin Web FrameWork. يحظى إطار عمل gin بشعبية كبيرة بين المطورين ويستخدم على نطاق واسع في Golang Web Development.

لنبدأ بالقانون

الحزم

تتضمن الخطوة الأولى للتشفير إنشاء دليل واستيراد الحزم المطلوبة لتشغيل البرنامج. لقد ذكرت الحزم أدناه للرجوع إليها ،

"github.com/gin-gonic/gin"
"go.mongodb.org/mongo-driver"
"go.mongodb.org/mongo-driver/bson/primitive"
"go.mongodb.org/mongo-driver/options"

هذه هي الحزم الخارجية الأساسية للمشروع ، وهناك حزم أخرى تحتاج إلى استيرادها ، بعضها داخلي وبعضها خارجي ، وهو ما يمكنك التعرف عليه أكثر في هذه المدونة.




الوظيفة الأساسية

لنبدأ بملف main.go ، حيث سنحدد وظيفتنا الرئيسية التي تتضمن عبارة شرطية تتحقق مما إذا كان متغير المنفذ فارغًا. إذا كان فارغًا ، فسيخصص قيمة 8080 لمتغير المنفذ. جهاز التوجيه: = gin.New () هو جهاز توجيه جديد نقوم بإنشائه. سيتم استخدامه للتعامل مع الطلبات الواردة وإرسالها إلى المعالج. تنص الخطوات التالية على واجهة برمجة تطبيقات REST بسيطة تتيح لك إنشاء المستخدمين والحصول عليهم وحذفهم. يستخدم إطار عمل Gin ، موجه السطر الأول. POST (“/ createuser”، controllers.Createuser ()) هو استدعاء دالة لطريقة POST لكائن جهاز التوجيه. يتطلب معلمتين:
● سلسلة تمثل مسار URL. في هذه الحالة ، هو / createuser.
● وظيفة سيتم استدعاؤها عند تقديم طلب POST إلى / منشئ المستخدم. في هذه الحالة ، إنها وحدات التحكم.
يحدد السطر التالي استدعاء دالة لطريقة GET لكائن جهاز التوجيه. يتطلب معلمتين:
● المعلمة الأولى هي سلسلة تمثل مسار URL. في هذه الحالة ، إنه / getuser. هذا يعني أنه عند تقديم طلب GET إلى الخادم الخاص بك على localhost: 8080 / getuser ، سيتم استدعاء هذه الوظيفة.
● المعلمة الثانية هي استدعاء دالة أخرى لأسلوب GetUser () لحزمة وحدات التحكم. هذا يعني أنه عند تقديم طلب GET إلى الخادم الخاص بك على localhost: 8080 / getuser ، سيتم استدعاء هذه الوظيفة وسيتم استخدام قيمة الإرجاع الخاصة بها كوسيطة لاستدعاء وظيفة المعلمة الأولى (الذي يحتوي على جهاز توجيه).

السطر الثالث هو معالج توجيه لأسلوب الحذف. سوف يتعامل مع الطلبات إلى / deleteuser. أخيرًا ، لقد ذكرت بدء تشغيل الخادم والاستماع إلى الطلبات.

تتضمن خطواتي التالية إعداد قاعدة البيانات ، لذلك يمكنك زيارة مدونتي السابقة. سيعطيك هذا فكرة موجزة عن اتصال قاعدة البيانات والإعداد. لقد قمت بمشاركة الكود أدناه لهذا المشروع أيضًا ، يرجى الرجوع إلى الصورة 2.




هيكل المبنى

الآن ، تحتاج إلى إنشاء الهيكل الذي يمثل مستخدمًا في تطبيقنا. يحتوي على 4 حقول: المعرف والاسم والجنس والعمر. هنا ، يتم استخدام البنية لإنشاء مستخدمين جدد وتخزينهم في قاعدة البيانات. لا تحتوي مجموعة التعليمات البرمجية على أي وظائف أو طرق أو ثوابت.




إنشاء وحدات تحكم

هذا هو القسم الأخير من هذا المشروع حيث سأكتب رمزًا لملف وحدة التحكم. لنبدأ بالحزم التي تحتاج إلى استيرادها قبل المتابعة ، يرجى الرجوع إلى الصورة 4 للرجوع إليها ،




بعد ذلك ، قمت بإنشاء متغير يعلن عن متغير يسمى UserCollection من النوع * mongo.Collection. القيمة المعينة للمتغير هي نتيجة استدعاء قاعدة بيانات الدالة .UserData (database.Client ، "المستخدم").

بعد التصريح عن المتغير ، سننشئ ثلاث وظائف لوحدة التحكم ، مثل CreateUser و GetUser و DeleteUser.


أولاً ، لنبدأ بوظيفة CreateUser. يرجى الرجوع إلى الصورة 5 قبل المتابعة ،




هنا ، تأخذ CreateUser Function نص الطلب وتربطه ببنية المستخدم. ثم يقوم بإدراج المستخدم في قاعدة البيانات.




بعد ذلك ، أشرت إلى GetUser Function ، والغرض منها هو الحصول على المستخدم بالمعرف المحدد في سلسلة الاستعلام. (راجع الصورة 7)




أخيرًا ، لقد قمت بإنشاء وظيفة DeleteUser التي تحذف كائنًا من قاعدة البيانات. يأخذ معرّفًا كمعامل ويستخدمه للعثور على الكائن في قاعدة البيانات. بمجرد العثور عليه ، يحذف الكائن ويعيد رسالة النجاح. (راجع الصورة 8)




هذه هي الطريقة التي يمكنك بها إنشاء وحدات تحكم وإنشاء Rest API في Golang. آمل أن يكون هذا مفيدًا لك ، Happy Coding !!

عن الكاتب

محمد الشريف المرجو منكم متابعت ومشاركت مدونتنا ليصلكم كل جديد

التعليقات


اتصل بنا

إذا أعجبك محتوى مدونتنا نتمنى البقاء على تواصل دائم ، فقط قم بإدخال بريدك الإلكتروني للإشتراك في بريد المدونة السريع ليصلك جديد المدونة أولاً بأول ، كما يمكنك إرسال رساله بالضغط على الزر المجاور ...

جميع الحقوق محفوظة

مستقبل التكنولوجيا