Suggestions

Topics: Web Api
Nov 12, 2010 at 3:21 PM

I have two suggestions: take a good look at WCF REST Contrib (https://github.com/mikeobrien/WcfRestContrib) and OpenRasta (http://trac.caffeine-it.com/openrasta). 

Coordinator
Nov 12, 2010 at 7:41 PM

Thanks Mike

Can you give a bit more context?

Sebastian Lambla, the author of OpenRasta along with several other folks in the HTTP/REST community have been very involved and one of the advisors of this project. We are not out to build OpenRasta which takes an opinionated view toward REST. Our goal is to build a platform that has full support for HTTP and which is nicely modularized / extensible to allow others to layer RESTful opinions on top.

Glenn

Nov 12, 2010 at 8:01 PM

Past attempts at making WCF RESTful have been disappointing. Engaging the team working on WCF REST was impossible and their grasp of REST was questionable. So if Microsoft is making another attempt at doing REST with WCF, then it would be great if they closely examined a good REST framework (Like OpenRasta) as well as examining an attempt to fix the pain points of doing REST in WCF (WCF REST Contrib).

Thats great to hear you are including Sebastian and have these forums open. Good signs, these.

Coordinator
Nov 12, 2010 at 8:14 PM
Edited Nov 12, 2010 at 8:15 PM

Thanks Mike

I understand your concern. This is not the REST starter kit effort. My main focus on the team currently is pushing this forward. Our plan is to continually release to Codeplex as we go to keep the community deeply engaged / and in a position to drive feedback / change.

As should be apparent if you look at our bits, we're not simply retrofitting. We are making some deep enhancements based on the feedback we have heard from customers and our advisors to bring WCF forward as a platform for HTTP and move past the bulk of issues that have been a concern.

Help keep us honest :-)

 

Nov 12, 2010 at 8:39 PM

Sounds good.

Well, all my pain points are embodied in WCF REST contrib implementation. I could list them out but you can read them here:

https://github.com/mikeobrien/WcfRestContrib/wiki

I spent the majority of my time on the project writing the contrib. Once that was done, the friction was gone with WCF and the rest of the project was a breeze. I think thats the key, having an implementation that fully embraces REST so users don't have friction when they are trying to be RESTful. It should be the opposite; you should have friction when *not* being RESTful.  

Coordinator
Nov 12, 2010 at 8:58 PM

Thanks Mike

I will check out the wiki. We are definitely embracing HTTP and REST. For example we're looking at things like a more resource oriented programming model. We're making first class the idea of multiple representations, hypermedia etc. We're just being cognizant that there is a lot of variance around REST, and there are folks that want to use HTTP but are not necessarily want to apply RESTful constraints.

A key goal is if you want to do REST, the platform supports you and doesn't stand in your way. That's entirely different than forcing you down a RESTful path.

Nov 13, 2010 at 12:05 AM

Mike,

One of the early pieces of feedback that the advisory board gave to Microsoft was to focus on producing a great framework around HTTP.  The opinionated REST frameworks would be built on top of that later.  I really don't think there is consensus on what a great REST framework looks like and I think this HTTP stack is simply the building blocks for us to build what we think a REST framework should look like.  Maybe in a few years we will all agree what that is and everything will be peachy.  In the meanwhile, Glenn's resource model that he demoed at Oredev is one example of what can be done.  The WebHttp model based on the way System.ServiceModel.Web works is another.  The key thing at this point is that the foundation is solid, RFC2616 is respected and the extension points are right.