tags:

views:

110

answers:

4

Hi all,

As we' re designing our brand new social media platform, we' ve decided to construct our site on a Restful interface. Later on, this restful interface will be used as a public API by our visitors.

I heard several rest frameworks like Restsharp, Hammock etc.

Which one is best? Do you have any experiences with any of these? What are your opinions?

Thanks!

A: 

I heard only good things about OpenRasta although I did not use it myself.

Alex Reitbort
hmmm that looks good.
Ekin Ozcicekciler
A: 

OData provides RESTful querying and modification and comes supported by Microsoft in .NET 3.5, 4.0. Have a look around the OData website (Producers, Developers sections specifically) to see how wide spread it's already become!

Rudu
this is implemented by a wcf data services? right?
Ekin Ozcicekciler
+2  A: 

If you're doing this more cheaply: WCF isn't that great for REST but it does work in a pinch. It works fine but it's VERY complex. The book Restful.NET is fairly indispensable in figuring it out.

If you go this route, the WCF REST Contrib library looks useful. I have not used it.

One huge caveat: Basic authentication is tied to Windows accounts if you use IIS to host; the Custom Basic Auth module claims to help you work around this. I have not used this toolkit either, but I have run into the restriction.

Broam
we' ve decided to use oauth wrap or oauth 2.0 to consume resources. do you have any experiences on using oauth with wcf?
Ekin Ozcicekciler
No, not at this time.
Broam
@broam - does this mean that if you DON'T use IIS to host then basic authentication works without using Windows accounts?
pc1oad1etter
I cannot speak to this, pc1oad1etter. Haven't tried.
Broam
+1  A: 

RESTSharp and Hammock are client side libraries, used to enhance the capabilities of the HTTP classes in System.Net. In the WCF Rest Starter kit there is a client library called Microsoft.Http that I find very good.

OpenRasta is a server side framework designed to help serve representations to clients. WCF is adequate for REST if you already know what you are doing. It can get painful if you need to step outside its expected boundaries.

Before picking a framework, do spend a reasonable amount of time reading about what REST is. Chances are very good that it is not what you think it is because there is a very large amount of mis-information floating around.

If you look in the Tag Wiki there is a link to the "Implementing REST" wiki on Google code that has this matrix of available frameworks.

Darrel Miller
What you mean with the "client side library"? Is that mean that these libraries used for consuming, OpenRasta is used for publishing? Right?Thanks!
Ekin Ozcicekciler
Yes exactly, that's right.
Darrel Miller