Angular HTTP İstekleri ve RxJS

Angular uygulamalarında sunucu ile iletişim kurma ihtiyacı duyulduğunda, en yaygın olarak HttpClient modülü kullanılır. Bu modül, HTTP isteklerini göndermek ve almak için kullanılır. Ayrıca, bu HTTP isteklerini Observable olarak döndürür, bu nedenle RxJS ile entegrasyonu çok yaygındır.

Şimdi bir Product modeli için uçtan uca CRUD işlemlerinin olduğu örnek bir uygulama yapalım.

HttpClient Modülünün Eklenmesi

HTTP isteklerini yapabilmek için öncelikle HttpClientModule ün uygulamamızın modülüne eklenmesi gerekiyor.

app.module.ts

HTTP İstekleri

Örnek: ProductService ile CRUD İşlemleri

Burada API olarak JSON Server’ı kullanacağım. Bir önceki yazımda JSON Server’ın nasıl kullanıldığını detaylıca anlatmıştım. Öncelikle Angular Projesine JSON Server Kurma ve Çalıştırma yazısını okuyarak server’ı ayağa kaldırın ve sonrasında bu yazıda kaldığınız yerden devam edin.

product.service.ts

RxJS Entegrasyonu

HttpClient ın sağladığı metotlar, sonuçları Observable olarak döndürür. Bu, RxJS’nin Reactive Programming konseptine dayandığı anlamına gelir. Bu sayede, HTTP isteklerinin yanıtlarına tepki olarak senkron veya asenkron işlemleri zincirleme, birleştirme, hata yakalama gibi işlemleri kolaylıkla gerçekleştirebiliriz.

Örnek: Hata Yakalama

HTTP isteklerinde bir hata oluştuğunda, bu hatayı yakalayıp kullanıcıya uygun bir mesaj göstermek için RxJS’nin catchError operatörünü kullanabiliriz:

product.service.ts

Şimdi bileşen içinde bu servis metotlarının nasıl kullanılacağını gösterelim:

ProductService Kullanımı: ProductComponent

Öncelikle, bir ürün listesi göstermek, ürün eklemek, güncellemek ve silmek için basit bir bileşeni temsil edelim.

product.component.ts

product.component.html

Angular ile HTTP istekleri göndermek ve almak oldukça kolaydır. HttpClient modülü, modern web uygulamalarının ihtiyaç duyduğu çoğu işlevselliği sunar. Ayrıca, RxJS ile olan entegrasyonu sayesinde, HTTP yanıtlarını işleme veya hataları yönetme konusunda güçlü araçlara sahip oluruz.

Umarım “Angular HTTP İstekleri ve RxJS” başlıklı yazım sizin için faydalı olmuştur.

Şu yazılar da ilginizi çekebilir.

Angular Servisler ve Bağımlılık Enjeksiyonu

Yeni bir yazımda görüşmek üzere.

Happy coding!

Yorum Yazın