API Nedir?
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||__________________________________________||||||||||||||||||||||||
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||__________________________________________|||||||||||||||||||||||||||||
API, programcılıkta çok kullanılan bir araçtır. API Neden Kullanılır, sorusuna cevap verelim. Normalde clientlar (Chrome, Android IOS vb.) gibi sizin yazdığınız kodları, operasyonları anlamazlar.
API clientlarla erişime geçmek için önemlidir. RESTful bir mimaride çalışır. API'de kullanıcı istekler oluşturur ve o isteklere göre işlem yapar. Buna RESTful mimari denir. Web geliştiricileri ve yazılım geliştiricileri tarafından sıklıkla kullanılır.
Hava durumunda, e-ticaret sitesinde, bankacılık uygulamalarında kullanılan bir yapıdır. API HTTP Protokölü ile çalışır. API'den datalar gelirken json xml html formatında gelir.
Güvenlik ve kimlik doğrulama gibi sistemlerde de API kullanılır. Kullanıldığı çok sistem olmakla birlikte API'ler test arayüzü de olabilir. Postman uygulaması geliştiricilerin en çok kullandığı test aracıdır.
Örneğin e-ticaret sitelerinde gördüğünüz kategoriye göre sıralama gibi operasyonlar [HttpGet]'le yazılır. Ürün ekleme, silme, güncelleme gibi operasyonlar [HttpPost]'la yazılır.
C# gibi dillerde genellikle büyük projelerde API'nin IoC Container'ı kullanılmaz, projeye başka bir istek gelince API eklemek zorunda kalınca kodda karmaşıklık olmaması için Autofac, Ninject, Postsharp gibi paketler kullanılır. Dilden dile değişir.
[HttpPost("add")]
public IActionResult Add(object, entity)
{
var result = _objectService.Add(entity);
if(result)
{
return Ok(result)
}
return BadRequest(result)
}
Burda WebAPI'ye Add operasyonu yazdık. Object, entity'i type olarak gösterdim, onun yerine Product, Car, Customer, User gibi şeyler gelebilir.
Result diye bir değişken oluşturduk _objectService kullanarak Add operasyonunu çağırdık ama ne göndermemiz lazım olduğunu söylememiz lazım, oraya entity verdik.
Sonra if koşulu yazdık, içine result yazdık, result = result.Success ve de result == true, aynı şeydir. O yüzden result yazdık. Eğer backend'imde yazdığım kurallara göre işlem başarılıysa Ok, yani başarılı döndür dedik ve altına eğer Ok döndürmezse ve benim kurallarıma uygun değilse BadRequest, yani başarısız dönsün dedik ve result'u da verdik.
return Ok'un içindeki result data, message, success getirebilir yani datayı, mesajı, sonucu getirebilir fakat operasyon başarısız döndüğünde return BadRequest'in içindeki result message ve success getirebilir.
Son Söz:
Okuduğunuz için teşekkürler.
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||__________________________________________||||||||||||||||||||||||
API, programcılıkta çok kullanılan bir araçtır. API Neden Kullanılır, sorusuna cevap verelim. Normalde clientlar (Chrome, Android IOS vb.) gibi sizin yazdığınız kodları, operasyonları anlamazlar.
API clientlarla erişime geçmek için önemlidir. RESTful bir mimaride çalışır. API'de kullanıcı istekler oluşturur ve o isteklere göre işlem yapar. Buna RESTful mimari denir. Web geliştiricileri ve yazılım geliştiricileri tarafından sıklıkla kullanılır.
Hava durumunda, e-ticaret sitesinde, bankacılık uygulamalarında kullanılan bir yapıdır. API HTTP Protokölü ile çalışır. API'den datalar gelirken json xml html formatında gelir.
Güvenlik ve kimlik doğrulama gibi sistemlerde de API kullanılır. Kullanıldığı çok sistem olmakla birlikte API'ler test arayüzü de olabilir. Postman uygulaması geliştiricilerin en çok kullandığı test aracıdır.
Örneğin e-ticaret sitelerinde gördüğünüz kategoriye göre sıralama gibi operasyonlar [HttpGet]'le yazılır. Ürün ekleme, silme, güncelleme gibi operasyonlar [HttpPost]'la yazılır.
C# gibi dillerde genellikle büyük projelerde API'nin IoC Container'ı kullanılmaz, projeye başka bir istek gelince API eklemek zorunda kalınca kodda karmaşıklık olmaması için Autofac, Ninject, Postsharp gibi paketler kullanılır. Dilden dile değişir.
(C# Örnek)
[HttpPost("add")]
public IActionResult Add(object, entity)
{
var result = _objectService.Add(entity);
if(result)
{
return Ok(result)
}
return BadRequest(result)
}
Burda WebAPI'ye Add operasyonu yazdık. Object, entity'i type olarak gösterdim, onun yerine Product, Car, Customer, User gibi şeyler gelebilir.
Result diye bir değişken oluşturduk _objectService kullanarak Add operasyonunu çağırdık ama ne göndermemiz lazım olduğunu söylememiz lazım, oraya entity verdik.
Sonra if koşulu yazdık, içine result yazdık, result = result.Success ve de result == true, aynı şeydir. O yüzden result yazdık. Eğer backend'imde yazdığım kurallara göre işlem başarılıysa Ok, yani başarılı döndür dedik ve altına eğer Ok döndürmezse ve benim kurallarıma uygun değilse BadRequest, yani başarısız dönsün dedik ve result'u da verdik.
return Ok'un içindeki result data, message, success getirebilir yani datayı, mesajı, sonucu getirebilir fakat operasyon başarısız döndüğünde return BadRequest'in içindeki result message ve success getirebilir.
Son Söz:
Okuduğunuz için teşekkürler.
Son düzenleme: