Daha önce bir REST API uyguladım ve çok beğendim. Genel olarak, SOAP üzerinden REST uyguladığınızda , istemciniz / sunucunuz daha diktir, yani istemcilerinizi etkilemeden sunucuyu daha serbest bir şekilde değiştirebilirsiniz. Bu ortogonalite, HTTP fiilleri aracılığıyla daha soyut ve daha iyi tanımlanmış bir iletişim kullanılmasından kaynaklanmaktadır. Ayrıca, REST yanıtlarınızda yerleşik olan köprülerin kullanılması, API'nizi nispeten ağrısız şekilde genişletmenizi ve büyütmenizi kolaylaştırır. Müşterilerin, daha fazla bilgi için bir web sayfasındaki bağlantıları araştırmak gibi bir insan gibi yeni kaynaklara ulaşmak için bu gömülü bağlantıları izlemeleri beklenir.
Bununla birlikte, SOAP kullanmaları gerektiği söylenen bazı iş arkadaşlarım vardı ve bu konuda sürekli şikayette bulundular. Bu yüzden ikisini biraz daha ayrıntılı araştırmaya başladım.
Genel olarak bulduğum, yüzlerce, binlerce veya milyonlarca müşteriniz olduğunda REST'in yüksek oranda dağıtılmış uygulamalar için çok uygun olduğu . Bunun bir nedeni yukarıda belirtilen dikliktir, diğeri ise HTTP kullandığınız için ücretsiz olarak önbelleğe almanızdır.
SOAP, bir müşteri için iki veya daha küçük bir API'ye ihtiyacınız olduğunda hızlı bir şekilde gitmek ve ölçeklenebilirlik konusunda endişelenmemek için daha hızlı bir yol olabilir. Kaynakların etrafında yapılandırılmış bir mimariye sahip değilseniz , REST'i uygulayabilmeniz için uygulamanızı yeniden yapılandırmanız biraz zaman alabileceğinden, size daha uygun olabilir.