Postman İle Huawei Kitlerinin Kullanımı
Herkese selamlar 👋
Bu makalede Postman ile Huawei’nin sağladığı kitlerin REST özelliklerini nasıl kullanabileceğimizi göstereceğim. Çok detaylı olmasa da genel bir fikir sahibi olabilmeniz ve kendi serverlarınızda fikir verebilmesi amacı ile okuyabilirsiniz.
Unutmayalım ki AppGallery Connect üzerinde projeyi oluşturmuş olmanız ve gerekli adımları bitirmiş olmanız gerekmektedir. Makaleyi kısa tutmak adına bu adımları atlıyor olacağım ama referanslar bölümünden bu adımları takip edebilirsiniz.
Postman Nedir?
Postman, API’lar oluşturmak ve kullanmak için bir API platformudur. Arka uç geliştirmesi için kurtarıcı bir araçtır ve HTTP isteklerinizi kolayca test etmenize ve hata ayıklamanıza olanak tanır.
Koleksiyonlar ve isteklere dayalı nispeten kullanımı kolay bir arayüze sahiptir. Her HTTP isteği ayrı bir dosyadır ve koleksiyonlar bu istek dosyalarından oluşur.
Postman’ın en büyük avantajlarından biri hem genel hem de koleksiyon/yerel değişkenleri kullanma yeteneğidir. Yerel değişkenler sadece ilgili koleksiyonlarda kullanılabilirken, genel değişkenler herhangi bir koleksiyonda kullanılabilir.
Ayrıca, sektörde yaygın olarak kullanılan API Anahtarı, JWT Bearer, Bearer Token ve OAuth gibi popüler yöntemlerin çoğunu içeren yetkilendirme yöntemi bulunur. Bu, koleksiyon genelidir ve bu koleksiyondaki tüm istekler yetkilendirme yöntemlerini koleksiyondan devralabilir veya kendi yöntemlerini uygulayabilirler.
Örnek olarak bu isteğin ebeveyn koleksiyonda seçtiğim seçeneği kullandığını görebilirsiniz.
Bu örnekte bir Health Kit dökümanlarını takip edeceğim, ancak genel fikir tüm kitler için aynıdır. Health Kit için başarılı bir HTTP isteği nasıl oluşturabileceğimize bakalım.
Health Kit dökümanında kullanmak istediğim Health Kit işlevinin referans belgesini açacağım ve sunucu tarafından gereken Protokolü, URL’sini ve Veri Formatını kontrol edeceğim.
Gördüğümüz gibi, HTTPS POST isteği, parametre içermeyen bir URL ile JSON formatı gerektiriyor. Bu bilgileri göz önünde bulundurarak yeni bir istek oluşturalım 🤠
Şimdi diğer gerekli başlıkları ve olası bir gövde eklememiz gerekiyor. Belgelere geri dönüp hangi seçeneklere sahip olduğumuza bakalım
Gördüğünüz gibi, Authorization dışında zorunlu başlıklarımız yok, ki bunu birazdan ele alacağım. Gövde için 2 zorunlu alanımız ve 1 isteğe bağlı alanımız var, zaten sadece 3 alan olduğu için hepsini yazalım 😄
Şimdi tüm gerekli başlıkları ve gövde alanlarını yazdık, yalnızca authorization eksik. Biliyoruz ki bir Bearer Token gerektiriyor, bu nedenle başlık oluşturma işlemini Postman’a bırakıp authorization sekmesinde Bearer Token seçerek tokenimizi oraya yazabiliriz. Veya başlıklar kısmına Authorization diye bir key koyarak değerine tokenimizi başına Bearer ekleyerek yazabiliriz. Hangisi sizin için daha uygunsa 😌
İsteğimizi göndermeyi deneyelim ve herhangi bir hata alıp almadığımıza bakalım
Ve görünüşe göre 403 Forbidden hatası aldık. Ne kadar hayal kırıklığına uğratıcı olursa olsun, hala sunucudan bir yanıt aldık! Bu işe yarıyor ve çalışıyor demek, kısmen 😏 Bu sorunu çözmemiz gerekiyor ve sonrasında isteğimiz tam olarak çalışacak!
Dökümantasyondaki sonuç kodları sayfasına gidip bu sorunun nedeni olabilecek şeylere bakalım.
Görünüşe göre ilk 2 senaryo sorunumuzun nedeni olabilir, diğerleri şimdiye kadar yaptıklarımızla ilgisi yok gibi görünüyor. AGC’deki bölgemizin Health Kit tarafından desteklendiğini doğruladıktan sonra, listedeki ikinci senaryo tarafından sağlanan FAQ’ye giderek sorunu çözmeye çalışacağız.
URL’mizin yanlış ayarlandığını gözüküyor, bu yüzden bu FAQ’de belirtilen adımları takip ederek düzelteceğiz.
Yanıtın başlıklar sekmesindeki Location değerini kopyalayın ve URL’imizi o bağlantıyla değiştirin
Tekrar denediğimizde ise 200 OK yanıtı aldık 😎
Yanıt gövdesinin herhangi bir “gerçek veri” içermediğini fark etmiş olabilirsiniz, çünkü bu zaman aralığında Health Kit projemizde veri yok 😁
İşte, Postman kullanarak işlevsel bir HTTP İsteği oluşturmak bu kadar basit. İsteğinizin koduna ihtiyacınız varsa, örneğin curl veya Kotlin gibi diller, sağ taraftan kod sekmesini seçebilirsiniz ve istediğiniz dili değiştirebilirsiniz.
Postman Projesi
Herkesin kullanabileceği, Huawei kitlerinin tüm REST uygulamalarını içeren bir Postman projesi geliştirdik. Kullanmak istediğiniz koleksiyonu yerel makinenize aktarabilir ve çalıştırabilirsiniz. Bağlantıyı referanslar bölümünde bırakacağım, desteğiniz için teşekkürler!
Daha sonra kendi çalışma alanınıza gidip koleksiyonu içe aktarabilirsiniz.
Sonuç
Bu makalede Postman’in ne olduğunu, arayüzünü ve basit bir şekilde sağladığı imkanlardan bahsettik. Health Kit’i örnek alarak bir HTTP Request’i oluşturduk ve aldığımız hatayı dökümanları tarayarak çözmeye çalıştık. Çözümümüzün çalıştığını ise serverdan gelen sonuç ile teyit ettik ve HTTP Requestiminiz doğru çalıştığını gördük.
Bu makaledeki adımlar sadece Health Kit için değil, HMS Core tarafından sağlanan bütün kitlerin REST özellikleri için de geçerlidir. AppGallery Connect üzerinde bir projenizin olduğundan emin olduktan sonra ve gerekli integrasyon adımlarını tamamladıktan sonra entegre ettiğiniz kitlerin REST özelliklerini bu makaledeki adımları takip ederek Postman ile kullanabilirsiniz.