ما هي خدمات الويب ؟

ما هي خدمات الويب ؟

خدمة ويب (بالإنجليزية: Web service)‏ هي نوع من تطبيقات الويب تقدم خدمات إلكترونية بين تطبيق وتطبيق آخر أو نظام ونظام آخر، بحيث يقوم التطبيق بالاتصال وطلب الخدمة (Service Request) من خدمة الويب من تطبيق آخر عبر واجهته البرمجية (وهي ما تعرف بـ واجهة برمجة التطبيقات) وليست (واجهة المستخدم الرسومية كالأزرار والأسهم إلخ)، ومن ثم ترسل خدمة الويب نتيجة الطلب للمستخدم مرة أخرى على هيئة لغة الترميز القابلة للامتداد.

 

تقنيات خدمات الويب

تستخدم خدمات الويب ثلاث تقنيات وهي:

SOAP

سواب وهو برتوكول لتبادل رسائل الـ لغة الترميز القابلة للامتداد، وهو مبني على بروتوكلي بروتوكول نقل النص التشعبي الآمن/بروتوكول نقل النص الفائق المعروفين.

WSDL

WSDL أو Web Services Description Language وهي لغة على هيئة لغة الترميز القابلة للامتداد لوصف خدمة الويب والتعريف بخدماته والـ end-points الخاصة به لتبادل الرسائل.

UDDI

UDDI أو Universal Description, Discovery and Integration وهو دليل على الإنترنت لسرد خدمات الويب المقدمة من الجهاز الخادم ويتيح لها التعرف على بعضها، أي أنه كدليل الهاتف.

مثال

استخدام Google APIs

من أشهر خدمات الويب هي التي تقدمها شركة جوجل، على سبيل المثال تستطيع أن تستخدم خدمات بحث جوجل في أي برنامج تبرمجه، ما عليك إلا تحميل الـ APIs الخاصة بخدمات البحث، وهي متوفرة تحت Google Data API: http://code.google.com/apis/gdata/clientlibs.html.و هي تتوفر بلغات برمجية عدة. مكتبة APIs جوجل لا تنحصر فقط على محرك البحث بل تشمل كل خدمات جوجل الآخرى كـ يوتيوب، FeedBurner، أندرويد وغيرها الكثير: http://code.google.com/more  (خدمة ويب  نسخة من ويكيبيديا))

 

فكرة عمل خدمات الويب

تتلخص الفكرة العامة لعمل خدمات الويب كالتالي

1- يقوم البرنامج العميل (البرنامج الذي يريد الخدمة) بإرسال طلب من البرنامج المزود للخدمة باستخدام إحدى تقنيات خدمات الويب ولتكن ( SOAP ) على هيئة طلب باستخدام طريقة ( HTTP POST )

[highlight background=”” color=””]ليس بالضرورة أن تكون وسيلة الإتصال هي ( HTTP ) ولكن هي الأكثر شيوعاً وقد تكون الإفتراضية إن لم يذكر غير ذلك[/highlight]

2- تقوم خدمة الويب بفك الرسالة وتحويلها لأوامر يستطيع البرنامج المزود للخدمة فهمها

3- يقوم البرنامج المزود بجمع المعلومات المطلوبة وتحويل المعلومات الى رسالة ( SOAP ) ثم إرسالها للبرنامج العميل

وبالتالي كما ذكرنا سابقاً يتضح أن خدمات الويب هي وسيط بين تطبيق وتطبيق آخر.

لماذا تم ابتكار خدمات الويب؟

إذا كانت لديك فكرة عامة عن طريقة عمل الموقع الإلكتروني فلابد أنك تعرف أن الحصول علي المعلومات من الموقع يتم عن طريق إرسال طلبات Requests من المستخدم إلى قاعدة البيانات ( DATABASE ) ثم يتم الرد Response  بهذه المعلومات وعرضها من خلال المتصفح. ولكن للحصول على أي معلومات من قاعدة البيانات لابد من معرفة اسم المستخدم والباسورد لقاعدة البيانات.

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

هنا يأتي دور خدمة الويب ( WEB SERVICES ) , بحيث يقوم موقع ياهو بعمل خدمة تقوم بعرض جزء من المعلومات الخاصة بالطقس من قاعدة البيانات وصياغتها بصيغة ( XML ) أو ( JASON ) ثم السماح لأي تطبيق باستخدام هذه الصيغ دون السماح للتطبيق بالوصول لقاعدة البيانات.((طالع أيضًا : مالمقصود بخدمات الويب Web Services؟))

تعليقات

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *