Apr 30 2007
Omri Gazitt writes about the new .Net framework:
Deeper Support for the Web
A big focus area has been to support more web protocols and formats out of the box. In .NET FX 3.0, we focused on nailing some key enterprise scenarios, like reliable exchange, transaction flow, end-to-end security, and queuing transports, to name a few. For .NET FX 3.5, we offer some nice features for public web services as well:
- Syndication: we have some classes for publishing and consuming RSS and Atom feeds. These formats (Atom especially) are quickly emerging as payload formats for all kinds of schematized data, not just blog entries or newsfeeds. You can use our classes independently from WCF for a simple OM on top of either format, and we integrate into WCF by implementing the obvious serialization interfaces, so that you can pass SyndicationFeeds into and out of service operations. I used an early version of this feature to create WCF-based RSS/Atom endpoints for my dasBlog instance.
- webHttpBinding: a new standard binding that has all the right defaults for “web” services – including support for GET as a verb, and a “bare” encoding (losing the SOAP envelope so that you have a POX message). Stay tuned, beta2 has MUCH more in store for the Web programmer… including deeper support for URL-based dispatch, more declarative support for GET and other verbs, and support for content-types beyond text/xml
It looks like Microsoft is going to come and play in the world of non-SOAP-based Web services. They’re not giving up on SOAP (which is not surprising), but are starting to give more credit to alternative ways of doing things, as they should.
Something which is very interesting to me is the following:
deeper support for URL-based dispatch. Part of the whole EPR / reference properties discussion a couple of years ago was, according to their proponents – which included Microsoft, about dispatch and how much better dispatching on XML elements was, and that basically the EPR address was not enough. And now that they’re looking beyond SOAP, guess what, it looks like the URL (the EPR’s address) may be useful for dispatching in the end. Since this is presented as a binding, this means that it’s something that could be used with their SOAP stuff as well. Well, this is supposing that my interpretation of binding is right, since binding is one of the most overused terms in Web services land. I’m staying tuned indeed for this one!
I have to admit that I love the quotes around Web. Since (SOAP) Web services have not much to do with the Web in the end or at least not the way they are being used (for example because of the EPR mess), then “Web services” – meaning services on the Web, the HTTP ones – cannot be referred to as Web services in the mind of people who have a SOAP mindset, but (insert air quotes here as you read this) “Web” services. Ironic, isn’t it?
Anyway, it’s good to see new tools coming for HTTP Web services. Read Omri’s post for the full story.