ASP.NET MVC Web Api

ASP.NET MVC Web Api

Salam, bu məqaləmdə Asp.Net MVC 4.0 ilə birlikdə gələn Web Api-dən danışmaq istəyirəm.

Api nədir? Nə işə yarayır?

Api açılışı Application Programming Interface (Tətbiqi Proqramlaşdırma İnterfeysi) deməkdir və müəyyən bir proqramın çölə açılan  müəyyən qapıları kimi başa düşmək olar. Məntiq olaraq bir server (server) və bir müştəri (client) olaraq başa düşmək olar. Müştəri ona hər hansı sorğu göndərir, server icara edib geriyə bir məlumat göndərir. Biz Api ilə istifadə üçün lazım müəyyən məlumatları almaq, yeniləmək və ya silmək üçün istifadə edə bilərik.

Api-lərə niyə ehtiyacımız var?

Api-lərin ən çox istifadə olunmasının səbəbi platformalar arasında məlumatların ötürülməsini təmin etmək və daha az vaxtda daha çox iş əldə etməkdən ibarətdir. Tutaq ki, siz Windows əməliyyat sistemi üçün C#-da masaüstü proqram təminatı hazırlamısınız və siz istəyirsiniz bu məlumatları mobil telefon vasitəsi ilə idarə edəsiniz bu zaman bizim köməyimizə Api çatır. Api-dən həmçinin bir çox dillər arasında məlumatların ötürülməsi üçündə istifadə edilə bilər (VB.Net, C #, Java, Objective-C).

Niyə WCF deyildə ASP.NET Web Api?

Proqram təminatları yerinə görə ola bilər ki bir birində fərqli platformalarda hazırlansın, Web Api-lər REST dəstəyi sayəsində platformadan asılı olmadan müstəqil yaradılır.

Hal hazırda Microsof investisiyalarını Web Api-lərin yaradılmasına yönləndirib, 2012-ci ilin sonunda is rəsmi olaraq WCF dəstəyini dayandırıb.

WCF ilə Web Api arasında olan ən böyük fərq isə Web Api-nin REST (Representational State Transfer) üzərində qurulmasıdır. Bu quruluş Server-Client arasındakı ünsiyyət əlaqəsini http protokolu üzərindən həyata keçirir. Bizim danışdığımız Web Api Get, Post, Put, Delete metodlarını dəstəkləyir.

Web Api-lər adətən geriyə JSON, Xml formatında məlumat qaytarır. Bunlardan ən çox istifadə olunanı isə JSON-dur. Amma yenədə System.Net.Http.Formatting adı altında olan MediaTypeFormatter vasitəsi ilə Serverdən məlumatları istədiyimiz formatda geri qaytara bilərik.

Diqqət çəkən bir digər özəlliyi isə Odata dəstəyinin olmasıdır. Serverə göndərilən məlumatlar nəticəsində geri qaytarılan məlumatlar üzərində filtirləmə işinin aparılabilməsdir. Bunun üçün address bar-da /?${Parametr}  yazmağımız kifayətdir. İstifadə olunacaq açar sözlər əsas bunlardır: orderby, top, skip, filter, select digər açar sözlərə buradan baxa bilərsiniz. OData istifadə edə bilmək üçün IQueryable məlumat geriyə qaytarmaq lazımdır.

İndi isə bir Web Api proyekti necə yaradılır ona baxaq.

Bun üçün Visual Studio-nu açırıq və File->New->Project.. seçirik.

New Project pəncərəsində sağ paneldən Web sol paneldən isə ASP.NET MVC 4 Web Application seçərək proyektimizə bir ad (məs:SampleApi) verib Ok düyməsini sıxırıq. (Şəkil.1)

api1

Şəkil. 1

Sonrakı pəncərdə Web API template seçərək Ok düyməsini sıxırıq. (Şəkil.2)

api2

Şəkil. 2

Yuxarıdakı əməliyyatdan sonra qarşımıza bəzi kodlar gələcək. Bu kodlar Default olaraq verilir və Web API ilə bu metodlardan istifadə olunur. (Şəkil. 3)

api3

Şəkil. 3

İndi isə metodların nə işə yaradığına nəzər salaq.


// GET api/values

public IEnumerable<string> Get()

{

return new string[] { "value1", "value2" };

}

IEnumerable tipində geriyə bir dəyər qayatarır. IEnumerable özündə Array, List, ArrayList və.s kolleksiyaları birləşdirir. Burada geriyə Array tipində dəyər qaytarılır.


// GET api/values/5

public string Get(int id)

{

return "value";

}

Burada geriyə String tipində məlumat geriyə qaytarılır siz bunu dəyişərək sizə lazım olan tipdə geriyə bir dəyər göndərə bilərsiniz. Browser-dən /api/values/5 açsanız sizə qaytarılan məlumatın value olduğunu görəcəksiniz.


// POST api/values

public void Post([FromBody]string value)

{

 

}

api/values Post metodu vasitəsi ilə məlumat göndərən zaman bu metod işə düşür. Bu ən çox yeni məlumat daxil edilməsi zamanı istifadə olunur.


// PUT api/values/5

public void Put(int id, [FromBody]string value)

{

 

}

Bu metod ilə əsasən yeniləmə əməliyyatları yerinə yetirilir.


// DELETE api/values/5

public void Delete(int id)

{

 

}

Silmə əməliyyatı bu metod vasitəsi ilə həyata keçirilir.

İndi isə proyektimizi Debug (F5) edək. Browserdə aşağıdakı forma açılacaq. (Şəkil. 4)

api41

Şəkil. 4

Buradan API keçidinə daxil oluruq.

Qeyd: APİ keçidinə daxil olarkən, ola  bilərki aşağıdakı səhv meydana gəlsin. (Şəkil.5)

api4

Şəkil. 5

Bu səhvin həll yolu System.Web.Http-in CopyLocal dəyərini true edin.(Şəkil.6)

api5

Şəkil. 6

 

API keçidinə daxil olarkən aşağıdakı formanı görəcəksiniz.  (Şəkil. 7)

api6

Şəkil. 7

7-ci şəkildə göstərilən keçidlərə daxil olmaqla yuxarıda sadaladığımız GET, POST, PUT, DELETE işləmə qaydaları ilə tanış ola bilərsiniz.

Bununlada məqaləmizin sonuna gəldik.

Gələcək məqaləmdə bu APİ metodlarını proyekt üzərində izah edəcəm.

İnanıram ki faydalı bir məqalə olacaq.

 

Hörmətlə,

Elvin Yusifli

 

 

Səs: +10, -10. Bəyənilsin Zəifdir

Müəllif: Elvin Yusifli

Şərhlər ( 1 )

  1. Dəyərli məqalələr üçün təşəkkürlər

Şərh yazın