Most of you know all about SOAP but perhaps you have been hearing a lot more about REST web services lately. Wondering what this is all about? Well check out this episode where Bob Familiar and I discuss the two.
So to sum up some of the considerations in choosing both :
URI Length (Remember URL can be at max 2K)
Complexity of Return Types
Anything more ??
For practial purposes, SOAP is a superset of REST. The key limitation of REST is the operations which are limited to what HTTP supports. Like anything else even those limits can be hacked away and actually are by FORM style web processing. But REST
sticks with a small number of basic operations on addressable resources, get, put (insert), post (update), and delete. These operations are the same ones used to access relational databases. The alterative that used to be in much more favor is a distributed
object model along the lines of DCOM where you have network communication that involves remote references to objects and complicated state models between objects that cooperate across the net. For all the noise, Microsoft's strategy seems strongly in tune
with the REST model. You see that in the way that LINQ, ADO.Net Data Services, and the Entity Framework operate. Data is separated from behavior, modeled as sets of entities, and made network addressable. The operations on data are those used by REST and
also by traditional databases. So the decision between REST and SOAP will mainly revolve around the particular environment that you are working with and the supporting function that is easiest for you to use.
Excellent interview Ron,
I liked the notepad example. Looking forward for your endpoint podcasts.