Bir Postman Klon Yapın: PUT, PATCH ve DELETE Eklemek
[[academy-video-youtube({"vid": "ieTngurK8RQ", "start_time": "0", "title": "PUT, PATCH ve DELETE: Bir Postman Klon Kursu Oluşturma", "creator": "Tim Corey", "length": "12m 17s"})]]
Tim Corey'nin "PUT, PATCH ve DELETE: Bir Postman Klon Kursu Oluşturma" videosunda, kalan HTTP fiilleri nasıl işleneceğini öğrenerek bir Postman klonu yapmaya devam ediyoruz. Önceki derste, GET istekleriyle birlikte POST komutlarını gerçekleştirdik. Bu ders, kendi Postman tarzı API istemcimizin temel işlevselliğini tamamlayan PUT, PATCH ve DELETE üzerine odaklanmaktadır. Tim'in rehberliğini takip etmek, API'lerin nasıl çalıştığını ve geliştiricilerin onlarla programlı olarak nasıl etkileşime girdiğini daha derinlemesine anlamamıza olanak tanır.
Tim, dersin başlangıcında yeni işlevselliğe giriş yapar ve bunun tam kursun sekizinci dersi olduğunu açıklar. Bu projenin başlangıç seviyesindeyken ve bir portföy örneği olarak hizmet edebilmesine rağmen, kodu doğrudan kopyalamak yerine çalışmalarınızı benzersiz hale getirmenin önemli olduğunu vurgular.
Uygulamada Açılır Listeyi ve Seçenekleri Güncelleme
Tim, uygulamanın kurulumunu göstererek başlar. Şu anda açılır menü, GET ve POST'u seçmeye izin vermektedir. Tam işlevli bir Postman klonu oluşturmak için seçenekler listesine PUT, PATCH ve DELETE eklememiz gerekiyor.
Özelliklerde, Tim tüm beş HTTP fiilinin seçenek olarak görünmesi için açılır menü öğelerini günceller: GET, POST, PUT, PATCH, DELETE. Açılır seçim, API istemcisi için geçerli HTTP eylemlerini tanımlayan arka planda kullanılan Enum ile eşleşmek zorunda olduğunu vurgular. Bu, kullanıcı açılır menüden bir seçenek seçtiğinde, işlemin doğru bir şekilde temel kod mantığına eşlenmesini sağlar.
Kullanıcı Seçimini HTTP Eylemlerine Eşleme
Tim, uygulamanın kullanıcının açılır menüdeki seçimini belirli bir HTTP istek yöntemine nasıl dönüştürdüğünü açıklar. Sistem önce form HTML girdisinde girilen URL'yi doğrular, ardından seçilen seçimi düz JavaScript'te bir HTTP eylemi olarak ayrıştırır.
Bu kurulum, uygulamanın CallApiAsync yöntemine üç önemli bilgi parçasını iletmesine olanak tanır:
Form HTML girdisindeki URL.
Form JavaScript alanı veya JSON metin düzenleyicisinden girilen genellikle JSON olan gövde içeriği.
- HTTP eylemine karşılık gelen seçilen eylem.
Bu, Postman klonunun farklı türde istekleri işleyebilmesini ve yanıt HTML bölümünde görüntülemek için doğru yanıt JavaScript'i döndürmesini sağlar.
PUT, PATCH ve DELETE Yöntemlerini Uygulamak
Tim, PUT, PATCH ve DELETE'i işlemek için gereken kodu göstermektedir:
PUT: Tam bir kaydı günceller. API istemcisi, verilen kimlik için tüm alanların üzerine yazan tam bir JSON nesnesi gönderir.
PATCH: Sadece belirli alanları günceller. Bu, bir kaydın bir parçasını diğer verileri etkilemeden değiştirmek istediğinizde yararlıdır.
- DELETE: Bir kaydı tamamen kaldırır. Sadece URL ve kimlik gerektirir; hiçbir içerik gönderilmez.
Tim, DELETE'nin biraz farklı olduğunu çünkü içerik döndürmediğini sadece bir başarı doğrulaması olduğunu not eder. Bu değişikliklerin tamamen düz JavaScript'te uygulandığını ve CallApiAsync yönteminin tüm seçimleri ve eylemleri işleyecek şekilde değiştirilmiş olduğunu belirtir.
Özellikleri Test Etmek
Tim, her HTTP yönteminin beklendiği gibi çalıştığını doğrulamanın önemini vurgular.
GET: Tim açılır menüden GET'i seçer ve gönderileri getirir. API istemcisi, yanıt HTML bölümünde verileri görüntüleyen doğru yanıt JavaScript'i döner.
PUT (5:01): PUT için, Tim kimlik, başlık, gövde ve kullanıcı ID'si ile tam bir kayıt günceller. Gönderilen verilerle eşleşen JSON'un döndüğünü gösterir ve işlemin düzgün çalıştığını doğrular.
PATCH (6:10): Tim, bir kaydın sadece başlığını güncelleyerek PATCH'i gösterir. Postman klonu diğer alanları olduğu gibi bırakır ve bu, kısmi güncellemeleri etkili bir şekilde yönetebildiğini kanıtlar.
- DELETE (7:32): DELETE, sadece kayıt kimliğini gerektirir. Tim isteği çalıştırır ve boş parantezler aracılığıyla başarıyı doğrular; bu, kaydın gereksiz veri döndürmeden kaldırıldığını gösterir.
Bu süreç boyunca, Tim bir Postman klonunun tüm CRUD işlemlerini (Oluştur (POST), Oku (GET), Güncelle (PUT/PATCH) ve Sil (DELETE)) nasıl gerçekleştirebileceğini göstermektedir.
Değişikliklerin ve Kurulumun Özeti
Tim, API istemcisini geliştirmek için gereken ana adımları ve kod değişikliklerini özetler:
Açılır menüyü tüm HTTP fiillerini (seçenekleri) dahil edecek şekilde güncelleyin.
Her fiilin bir yönteme doğru bir şekilde eşlemeler yapmasını sağlamak için arka plandaki Enum'un her fiille eşleştiğinden emin olun.
- Ek fiilleri ve verileri uygun şekilde işlemek için JavaScript'teki CallApiAsync yöntemini değiştirin.
Bir isteğe bağlı geliştirme belirtir: DELETE için, kullanıcı deneyimini basitleştirmek için serileştirilmiş çıktı yerine basit bir başarı mesajını döndürebilirsiniz.
Postman Klonunun Mevcut Durumu ve Özellikleri
Bu noktada, Postman klonu beş HTTP fiili ile tam işlevlidir. Kullanıcılar bir URL girebilir, bir form JavaScript düzenleyicisi aracılığıyla JSON verileri gönderebilir ve yanıt HTML ekranında yanıtları alabilirler.
Ancak, Tim uygulamayı geliştirebilecek bazı ek özellikleri işaret eder:
XML istek desteği.
Kimlik doğrulama işlemi.
- Özel başlıklar ekleme.
Bunlar, geliştiricilerin klonu genişletmeleri ve daha esnek hale getirmeleri için fırsatlardır.
Kendi Postman'ınızı Geliştirmek İçin Tim'in Tavsiyesi
Tim, izleyicilere kendi Postman klonlarını inşa etmeye ve geliştirmeye devam etmeleri için meydan okur:
WPF, Blazor veya düz HTML/JavaScript gibi çerçeveler kullanarak web kullanıcı arayüzleri ekleyin.
Ek API'ler ekleyin ve farklı veri türlerini işleyin.
Açılır menüdeki farklı seçenekleri test edin ve zengin bir işlevsellik için özellikleri genişletin.
- Potansiyel işverenlere deponuzu, kodunuzu ve sürecinizi göstermek için projenizi GitHub'da paylaşın.
Uygulama ve programlama kavramlarını derinlemesine anlamanızı sağlar.
Sonuç
Tim, denemeleri teşvik ederek videoya son verir. Test uygulamaları üzerinde oynamaktan hoşlandığını ve geliştiricilerin tekrarlı yineleme yoluyla geliştiğini vurgular.
Dizi için GitHub kodu hemen sağlanmamış olsa da, gelecekte Dev Pass'ta kullanılabilir olabilir. Şimdi, öğrencilerin kendi Postman klonlarını sıfırdan oluştururken kurulum, süreç ve kod uygulamasını pratiğe dökmeyi, projeyi kendilerine özgü hale getirirken tekil hale getirmeyi sağlıyor.
Tim'in yaklaşımını takip ederek, geliştiriciler işlevsel bir API istemcisi oluşturabilir, HTTP yöntemlerini anlayabilir ve portföy için hazır bir proje üretirken form HTML, yanıt JavaScript ve JSON işlemesiyle pratik beceriler gösterebilirler.

