Ana SayfaHakkımdaİletişim

Nodejs ve Web Api

Yazar Ömer Harun Çetin
Kategori Yazılım
7/9/2020
2 dakikalık okuma

Bu yazıda bahsedeceğim temel konular şunlar:

  • API nedir?
  • API ne için kullanılır?
  • Nodejs ve API

API Nedir?

API Application Programming Interface demektir. Türkçesi ise Uygulama Programlama Arayüzüdür. Api’ler sadece web alanında kullanılmazlar. Farklı birçok alanda kullanılırlar. Web api’ler uygulama geliştiricilere kolaylık sağlar ve işlerini hızlandırır. Web api’leri internete bağlanabildiğimiz her cihazdan çağırıp gelen veriyi işleyebiliriz.

Ne için Kullanılır?

Birçok farklı işlem için kullanılabilir. Ancak temelde veri alışverişi için kullanıldığını söyleyebiliriz. Örneğin bizim veritabanımızda samanyolundaki gezegenlerin isimleri, yüzölçümleri, güneşe uzaklıkları gibi verilerin olduğunu varsayalım ve bu verileri başka bir kişi kendi web sitesinde kullanmak istiyor ancak bu verileri internet üzerinden araştırıp toplamak sonra da düzene koyup kendi kullanacağı biçime getirmek zorlayıcı olabilir.Öte yandan sadece frontend bilgisi vardır ve bu tür servis yazmasını bilmiyor da olabilir. Tabii bu bahsettiğim özellikler sadece bu spesifik örnek için geçerli daha birçok farklı konuda değişik özellikler belirlenebilir. Bu örneğimizin üstünden gitmeye devam edersek, bu kişi bu verileri kolayce benim yazdığım bir web servis aracılığıyla alabilir. Ben bu web serviste istenilen bilgiyi -örneğin tüm gezegen adları, tek bir gezegenin tüm özellikleri- ona dönebilirim. Bundan sonra da artık hangi amaçla o veriyi kullanmak isterse kendisi kullanabilir. Bu verdiğim örnek api’ ın temel yaptığı şeyi açıklamak için yeterli olabilir.

Peki api nerelerde kullanılır? sorusuna gelirsek de, her yerde kullanılabilir diye bir cevap versem yanlış olmaz heralde. E-ticaret siteleri, blog siteleri, özel amaçlı yazılmış apiler, yapay zeka için kullanılmış apiler gibi bir çok türü bulunmaktadır.

Nodejs ve API

Nodejs ile api geliştirilmesi gayet kolay ve etkilidir. NPM sayesinde geliştirirken ihtiyacımız olan paketleri kolayca indirip projemize entegre edebiliriz. Bizim işimize yarayan birçok paket bulunmaktadır bunun için.

Örneğin express-rate-limit adında bir npm paketi var ve bu paket bizim yazdığımız API ye atılan istekleri kısıtlamamıza yarıyor ve bunu çok kolay bir şekilde yapabiliyoruz. Sadece kaç milisaniyede bu kuralın geçerli olacağını ve kaç defa istek yapılabileceğini belirliyoruz ardından sadece belirlediğimiz bu objeyi servisimize middleware olarak veriyoruz ve işte bu kadar. Örneğin 30 * 1000 milisaniye seçtik (30 saniye) ve 1 defa istek yapabilir dedik. Bunun sayesinde bir kişi 30 saniyede sadece bir adet istek yapabilir hale geliyor. Yani bizden bir kere veri çektikten sonra 30 saniye beklemesi gerekiyor.

Bir diğer yardımcımız ise express-slow-down. Bu paketin amacı ise şu: yapılan istekleri yavaşlatmak. Örneğin bu koruma olmadan bir servise istek yaptığınızda 50 kere de yapsanız hepsinde yaklaşık aynı sürelerde size cevap döner. Ancak bu paket kullanıldığında ilk yapılan istekten sonraki her istekte belirlediğiniz milisaniye kadar geç cevap veriyor. Bunda da parametre olarak; bu etkinin ne kadar süreceğini, bu etki süresince kaç defa istek yapabileceğini ve birinci istekten sonraki her istekte, her seferinde ne kadar gecikme ile cevap vereceğini belirleyebiliyoruz.

Bunlar sadece ikisi, ilerleyen yazılarda nasıl api yazılacağı, bunlar için hangi paketlerin kullanılabileceği gibi detayları da vereceğim.

Bir sonraki yazıda görüşmek üzere…


Etiketler

#nodejs#api
Önceki Yazı
Yazılım Yaşam Döngü Modelleri
Sonraki Yazı
XML vs JSON

Ömer Harun Çetin

Yazılım Geliştiricisi ve Veri Bilimci Adayı

Kategoriler

Blokzincir

Yazılım

İlişkili Yazılar

XML vs JSON
9/30/2020
1 dakika
© 2022, All Rights Reserved.

Linkler

Benimle Birlikte Çalışmak İster Misiniz ?Hakkımdaİletişim

Sosyal Medya