50 أسئلة وأجوبة لمقابلة Asp.Net Web API (2025)

فيما يلي أسئلة وإجابات مقابلة Asp.Net Web API للمرشحين الجدد وذوي الخبرة للحصول على وظيفة أحلامهم.

 

أسئلة وأجوبة مقابلة Asp.Net Web API للطلاب الجدد

1) ما هي واجهة برمجة تطبيقات الويب؟

WebAPI هو إطار عمل يساعدك على إنشاء/تطوير خدمات HTTP.


2) لماذا تكون واجهة برمجة تطبيقات الويب مطلوبة؟ هل من الممكن استخدام خدمات RESTful باستخدام WCF؟

نعم، لا يزال بإمكاننا تطوير خدمات RESTful مع WCF. ومع ذلك، هناك سببان رئيسيان يدفعان المستخدمين إلى استخدام Web API بدلاً من خدمات RESTful.

  • تعمل واجهة برمجة تطبيقات الويب على زيادة نهج TDD (اختبار البيانات) في تطوير خدمات RESTful.
  • إذا أردنا تطوير خدمات RESTful في WCF، فأنت بالتأكيد بحاجة إلى الكثير من إعدادات التكوين وقوالب URI والعقود ونقاط النهاية لتطوير خدمات RESTful باستخدام واجهة برمجة تطبيقات الويب.

👉 تنزيل PDF مجاني: أسئلة وأجوبة مقابلة Asp.Net Web API >>


3) لماذا تختار Web API؟

  • يتم استخدامه لإنشاء خدمات HTTP بسيطة لا تعتمد على SOAP
  • إنها أيضًا طريقة سهلة للإنشاء باستخدام Web API. مع خدمات WCF REST
  • يعتمد على HTTP ويسهل تعريفه وعرضه واستهلاكه بطريقة REST-ful.
  • إنه تصميم خفيف الوزن ومثالي للأجهزة التي لديها نطاق ترددي محدود مثل الهواتف الذكية.

4) هل صحيح أن ASP.NET Web API قد حل محل WCF؟

ليس صحيحًا على الإطلاق أن ASP.NET Web API قد حل محل WCF. في الواقع، إنها طريقة أخرى لبناء خدمات غير مستندة إلى SOAP، أي سلسلة XML أو JSON عادية.


5) ما هي مميزات Web API؟

مزايا واجهة برمجة تطبيقات الويب هي:

  • أوداتا
  • فلاتر
  • تفاوض المحتوى
  • الاستضافة الذاتية
  • التوجيه
  • الارتباطات النموذجية

أسئلة مقابلة Asp.Net Web API


6) ما هي أنواع الإرجاع الرئيسية المدعومة في Web API؟

يمكن أن يقوم إجراء وحدة تحكم واجهة برمجة التطبيقات على الويب بإرجاع القيم التالية:

  • باطل - سيعود المحتوى الفارغ
  • HttpResponseMessage - سيتم تحويل الرد إلى رسالة HTTP.
  • IHttpActionResult - استدعاء داخليًا لـ ExecuteAsync لإنشاء HttpResponseMessage
  • أنواع أخرى – يمكنك كتابة قيمة الإرجاع المتسلسلة في نص الاستجابة

7) Web API يدعم أي بروتوكول؟

يدعم تطبيق الويب بروتوكول HTTP.


8) ما هو إطار عمل .NET الذي يدعم Web API؟

NET 4.0 والإصدارات الأحدث يدعم واجهة برمجة تطبيقات الويب.


9) أي من المكتبات مفتوحة المصدر التالية تستخدم واجهة برمجة تطبيقات الويب لتسلسل JSON؟

يستخدم Web API مكتبة Json.NET لتسلسل JSON.


10) بشكل افتراضي، ترسل واجهة برمجة التطبيقات على الويب استجابة HTTP مع أي من رموز الحالة التالية لجميع الاستثناءات غير الملتقطة؟

500 - خطأ خادم داخلي


أسئلة مقابلة Asp.Net Web API للخبراء

11) ما هو أكبر عيب في "أنواع الإرجاع الأخرى" في Web API؟

أكبر عيب في هذا الأسلوب هو أنه لا يمكنك إرجاع رمز خطأ مباشرة مثل خطأ 404.


12) كيف يمكنك إنشاء HtmlResponseMessage؟

فيما يلي طريقة البناء للقيام بذلك،

public class TestController : ApiController

{

public HttpResponseMessage Get()

{

HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.OK, "value");

response.Content = new StringContent("Testing", Encoding.Unicode);

response.Headers.CacheControl = new CacheControlHeaderValue()

{

MaxAge = TimeSpan.FromMinutes(20)

};

return response;

}

}

13) ما هو توجيه Web API؟

التوجيه هو مطابقة النمط كما هو الحال في MVC.

يتم تسجيل كافة المسارات في جداول الطريق.

فمثلا:

Routes.MapHttpRoute(

Name: "ExampleWebAPIRoute",

routeTemplate: “api/{controller}/{id}

defaults: new { id = RouteParameter.Optional}

14) ما هو الصابون؟

SOAP هو تنسيق رسائل XML يُستخدم في تفاعلات خدمة الويب. فهو يسمح بإرسال الرسائل عبر HTTP أو JMS، ولكن يمكن استخدام بروتوكولات نقل أخرى. وهو أيضًا بروتوكول مراسلة يعتمد على XML لتبادل المعلومات بين أجهزة الكمبيوتر.


15) ما فائدة استخدام REST في Web API؟

يتم استخدام REST لإجراء عمليات نقل أقل للبيانات بين العميل والخادم مما يجعله مثاليًا لاستخدامه في تطبيقات الهاتف المحمول. تدعم Web API أيضًا بروتوكول HTTP. ولذلك، فإنه يعيد تقديم الطريقة التقليدية لأفعال HTTP للتواصل.


16) كيف يمكننا استخدام Web API مع ASP.NET Web Form؟

يمكن استخدام Web API مع نموذج ويب ASP.NET

ويمكن تنفيذها في ثلاث خطوات بسيطة:

  1. إنشاء وحدة تحكم Web API،
  2. قم بإضافة جدول توجيه إلى أسلوب Application_Start الخاص بـ Global.asax
  3. فأنت بحاجة إلى إجراء طريقة jQuery AJAX Call to Web API والحصول على البيانات.

17) كيف يمكنك تقييد الوصول إلى Web API إلى فعل HTTP محدد؟

تلعب برمجة السمات دورًا مهمًا. من السهل تقييد الوصول إلى طريقة ASP.NET Web API ليتم استدعاؤها باستخدام طريقة HTTP معينة.


18) هل يمكنك استخدام Web API مع ASP.NET Web Form؟

نعم، من الممكن استخدام Web API مع نموذج الويب ASP.Net. لأنه مرفق مع إطار عمل ASP.NET MVC. ومع ذلك، يمكن استخدامه مع نموذج ويب ASP.NET.


19) كيف يمكن تعيين اسم مستعار لـ ASP.NET Web API Action؟

يمكننا إعطاء اسم مستعار لإجراء Web API كما هو الحال في حالة ASP.NET بعثة التحقق المشتركة باستخدام سمة "ActionName" على النحو التالي:

[HttpPost]

[ActionName("SaveStudentInfo")]

public void UpdateStudent(Student aStudent)
{
StudentRepository.AddStudent(aStudent);
}

20) ما معنى TestApi؟

TestApi هي مكتبة مساعدة لواجهات برمجة التطبيقات. باستخدام هذه المكتبة يمكن لمطور الاختبار إنشاء أدوات الاختبار والاختبارات الآلية لتطبيقات .NET باستخدام بنية البيانات والخوارزميات.


أسئلة مقابلة API للويب لمدة 5 سنوات من الخبرة

21) شرح مرشحات الاستثناء؟

سيتم تنفيذه عندما لا تتم معالجة الاستثناءات ويتم طرحها من وحدة التحكمoد. سبب الاستثناء يمكن أن يكون أي شيء. ستقوم مرشحات الاستثناء بتنفيذ واجهة "IExceptionFilter".


22) كيف يمكننا تسجيل مرشح الاستثناء من الإجراء؟

يمكننا تسجيل مرشح الاستثناء من الإجراء باستخدام الكود التالي:

[NotImplExceptionFilter]

public TestCustomer GetMyTestCustomer(int custid)

{

//write the code

}

23) كيف يمكنك إرجاع طريقة العرض من طريقة ASP.NET Web API؟

لا، لا يمكننا إرجاع طريقة عرض من طريقة ASP.NET Web API. تقوم Web API بإنشاء خدمات HTTP التي تعرض البيانات الأولية. ومع ذلك، فمن الممكن أيضًا في تطبيق ASP.NET MVC.


24) كيفية تسجيل مرشح الاستثناء عالميًا؟

من الممكن تسجيل مرشح الاستثناء عالميًا باستخدام الكود التالي-

GlobalConfiguration.Configuration.Filters.Add(new

MyTestCustomerStore.NotImplExceptionFilterAttribute());


25) اشرح ما هو الراحة والراحة؟

يمثل REST نقل الحالة التمثيلية؛ إنه جانب جديد تمامًا لكتابة تطبيق ويب.

RESTFUL: هو مصطلح مكتوب بتطبيق مفاهيم REST المعمارية ويسمى خدمات RESTful. ويركز على موارد النظام وكيفية نقل حالة الموارد عبر بروتوكول HTTP.


26) أعطني مثالاً واحدًا على توجيه Web API؟

Config.Routes.MapHttpRoute(

name: "MyRoute,"//route name

routeTemplate: "api/{controller}/{action}/{id}",//as you can see "API" is at the beginning.

defaults: new { id = RouteParameter.Optional }

);

27) كيف يمكنك التعامل مع الأخطاء في Web API؟

تتوفر عدة فئات في Web API للتعامل مع الأخطاء. وهي HttpError، ومرشحات الاستثناء، وHttpResponseException، وتسجيل مرشحات الاستثناء.


28) ما هي الميزات الجديدة التي تأتي مع ASP.NET Web API 2.0؟

أحدث ميزات ASP.NET Web API Framework v2.0 هي كما يلي:

  • توجيه السمة
  • تبادل الموارد عبر المنشأ
  • المصادقة الخارجية
  • افتح واجهة الويب NET
  • httpActionResult
  • واجهة برمجة تطبيقات الويب OData

29) كيف يمكنك تقييد طرق الوصول إلى أفعال HTTP محددة في Web API؟

بمساعدة السمات (مثل أفعال HTTP)، من الممكن تنفيذ قيود الوصول في Web API.

من الممكن تعريف أفعال HTTP كسمة لتقييد الوصول.

على سبيل المثال:

[HttpPost]

public void Method1(Class obj)

{

//logic

30) كيف يمكنك تمرير أنواع معقدة متعددة في Web API؟

طريقتان لتمرير الأنواع المعقدة في واجهة برمجة التطبيقات على الويب -

باستخدام ArrayList ومصفوفة Newtonsoft


31) اكتب رمزًا لتمرير ArrayList في Web API؟

ArrayList paramList = new ArrayList();

Category c = new Category { CategoryId = 1, CategoryName =“MobilePhones”};

Product p = new Product { Productcode = 1, Name = “MotoG”, Price = 15500, CategoryID = 1 };

paramList.Add(c);

paramList.Add(p);

32) ما اسم الأدوات أو واجهة برمجة التطبيقات (API) لتطوير أو اختبار واجهة برمجة تطبيقات الويب؟

تتضمن أدوات اختبار خدمات الويب لواجهات REST API ما يلي:

  1. واجهة برمجة تطبيقات جيرسي
  2. المزيد
  3. محور
  4. ريستليت

33) ما هو الراحة؟

REST هو أسلوب معماري. وقد حدد إرشادات لإنشاء خدمات قابلة للتطوير. يتم استخدام REST مع بروتوكول HTTP باستخدام أفعاله GET وPUT وPOST وDELETE.


34) كيفية وحدة اختبار واجهة برمجة تطبيقات الويب؟

يمكننا إجراء اختبار الوحدة باستخدام أدوات Web API مثل Fiddler.

فيما يلي بعض الإعدادات التي يجب القيام بها إذا كنت تستخدم

Fiddler -إنشاء علامة التبويب -> أدخل رؤوس الطلب -> أدخل نص الطلب وقم بالتنفيذ


35) كيف يمكننا تقييد الوصول إلى الأساليب التي تحتوي على أفعال HTTP محددة في Web API؟

تُستخدم برمجة السمات على نطاق واسع لهذه الوظيفة. يسمح Web API أيضًا بتقييد الوصول إلى طرق الاتصال بمساعدة أفعال HTTP محددة. من الممكن أيضًا تعريف أفعال HTTP كسمة فوق الطريقة.


أسئلة المقابلة لواجهة برمجة تطبيقات الويب لأكثر من 10 سنوات من الخبرة

36) ما هو استخدام DelegatingHandler؟

يتم استخدام DelegatingHandler في Web API لتمثيل معالجات الرسائل قبل التوجيه.


37) كيف يمكننا تسجيل مرشح الاستثناء من الإجراء؟

يمكننا تسجيل مرشح الاستثناء من الإجراء باستخدام الكود التالي

[NotImplExceptionFilter]

public TestCust GetMyTestCust (int custno)

{

//write the code

}

38) أخبرني بمقتطف الكود لتوضيح كيف يمكننا إرجاع أخطاء 404 من HttpError؟

رمز لإرجاع الخطأ 404 من HttpError

string message = string.Format(“TestCustomer id = {0} not found”, customerid);

return Request.CreateErrorResponse(HttpStatusCode.NotFound, message);


39) اشرح مقتطف الكود لتسجيل مرشحات الاستثناء من وحدة التحكم؟

[NotImplExceptionFilter]

public class TestCustController : Controller

{

//Your code goes here

}

40) Web API يدعم أي بروتوكول؟

يدعم تطبيق الويب بروتوكول HTTP


41) أي من أطر عمل .NET التالية تدعم واجهة برمجة التطبيقات (API) على الويب؟

يتم دعم Web API بواسطة إصدار NET 4.0


42) ما هي المكتبة التي تستخدم واجهة برمجة تطبيقات الويب لإجراء تسلسل JSON؟

يستخدم Web API مكتبة Json.NET لتسلسل JSON.


43) بشكل افتراضي، ترسل واجهة برمجة التطبيقات على الويب استجابة HTTP مع أي من رموز الحالة التالية لجميع الاستثناءات غير الملتقطة؟

500 - خطأ خادم داخلي


44) شرح طريقة معالجة الخطأ باستخدام HttpError في Web API؟

في WEB API، يتم استخدام HttpError لرمي معلومات الخطأ في نص الاستجابة. يمكن أيضًا استخدام طريقة "CreateErrorResponse" جنبًا إلى جنب مع هذا، وهي طريقة تمديد محددة في "HttpRequestMessageExtension".


45) كيف يمكننا تسجيل مرشح الاستثناء عالميًا؟

يمكننا تسجيل مرشح الاستثناء عالميًا باستخدام الكود التالي:

GlobalConfiguration.Configuration.Filters.Add (new MyTestCustomerStore.NotImplExceptionFilterAttribute());

46) كيفية التعامل مع الأخطاء في Web API؟

تتوفر عدة فئات في Web API للتعامل مع الأخطاء. وهي HttpError وHttpResponseException ومرشحات الاستثناء وتسجيل مرشحات الاستثناء.


47) ما هي فائدة WebAPI على WCF؟

تستخدم خدمات WCF بروتوكول SOAP بينما لا يستخدم HTTP بروتوكول SOAP مطلقًا. ولهذا السبب تعتبر خدمات WebAPI خفيفة الوزن نظرًا لعدم استخدام SOAP. كما أنه يقلل من البيانات التي يتم نقلها لاستئناف الخدمة. علاوة على ذلك، فهو لا يحتاج أبدًا إلى الكثير من التكوين. لذلك، يمكن للعميل التفاعل مع الخدمة باستخدام أفعال HTTP.


48) اختلافات الحالة بين MVC وWebAPI

يستخدم إطار عمل MVC لتطوير التطبيقات التي لها واجهة مستخدم. ولهذا السبب، يمكن استخدام طرق العرض لإنشاء واجهة مستخدم.

يتم استخدام WebAPI لتطوير خدمات HTTP. يمكن أيضًا تسمية التطبيقات الأخرى بطرق WebAPI لجلب تلك البيانات.


49) من يمكنه استخدام WebAPI؟

يمكن استخدام WebAPI بواسطة أي عميل يدعم أفعال HTTP مثل GET وPUT وDELETE وPOST. نظرًا لأن خدمات WebAPI لا تحتاج إلى أي تكوين، فمن السهل جدًا استهلاكها من قبل أي عميل. ومع ذلك، حتى الأجهزة المحمولة مثل الأجهزة المحمولة يمكنها بسهولة استهلاك WebAPI والتي تعد بالتأكيد أكبر مزايا هذه التقنية.


50) كيف يمكننا التأكد من أن Web API يقوم بإرجاع بيانات JSON فقط؟

لجعل واجهة برمجة تطبيقات الويب تسلسل الكائن المرتجع إلى تنسيق JSON وترجع بيانات JSON فقط، يجب عليك إضافة الكود التالي في فئة WebApiConfig.cs في أي مشروع واجهة برمجة تطبيقات ويب MVC:

//JsonFormatter

//MediaTypeHeaderValue

Config.Formatters.JsonFormatter.SupportedMediaTypes.Add(new MediaTypeHeaderValue("application/json"));

1

2

3

//JsonFormatter

//MediaTypeHeaderValue

Config.Formatters.JsonFormatter.SupportedMediaTypes.Add(new MediaTypeHeaderValue("application/json"))

ستساعد أسئلة المقابلة هذه أيضًا في حياتك (شفهي)