There is a similar question here but it only covers some of the issues below.
We have a client who requires web services using REST.
We have tons of experience using SOAP and over time have gathered together a really good set of tools for SOAP development and testing e.g.
- soapUI
- Eclipse plugins
- wsdl2java
- WSStudio
By "tools" I mean a product "out of the box" that we can start using. I'm not talking about cutting code to "roll our own" using Ajax or whatever.
The tool set for REST doesn't seem to be nearly as mature?
What tools are out there (we use C# and Java mainly) ?
Do the tools handle GET, POST, PUT, and DELETE?
Is there a decent Eclipse plugin?
Is there a decent client testing application like WSStudio where you point the tool to the WSDL and it generates a proxy on the fly with the appropriate methods and inputs and you simple type the data in?
Are there any good package monitoring tools that allow you to look at the data? (I'm not thinking about sniffers like Wireshark here but rather things like soapUI that allow you to see the request / response) ?
There are some tools that do these type of things but few support RESTful APIs as yet.
"Rose" does: http://www.ibm.com/developerworks/rational/library/design-implement-restful-web-services/index.html
but you will need deep pockets...
Not aware of any others at the moment. Would like to know though (of something afordable)
https://play.google.com/store/apps/details?id=com.snmba.restclient
is a very powerful tool to troubleshoot rest services directly from android devices.
Runscope is a cloud based service that allows you to inspect the requests to and responses from a web API. It also does testing and measurement of API performance.
Disclaimer: I work for Runscope.
A fine tester for REST web services is HttpMaster.
It supports various http methods and allows you to monitor complete request/responses data. You can also use dynamic parameters to execute a group of requests, it also supports simple response data validations. It's easy to use, but it only runs on Windows (it's a .NET application).
The easy and best client tool to test your REST API calls is a Firefox add-on RESTClient.
Install the add on and test the API calls.
In terms of a client testing application, I had a similar problem. I couldn't find a tool that I could use to quickly test data going in and out of the web services I was creating/using. So I created my own tool using C# .NET. It's essentially a client application that you can use for GET, POST, PUT, and DELETE queries on rest services.
The software is called REST Scratch Pad. It lets you enter the data to send to the REST service and view the results of queries along with their headers and response times. It will handle basic authentication and will remember the URLs you've used in prior sessions (to avoid having to re-type long URLs).
The current version is free. The next version will use a newer version of .NET and cover more authentication methods.
REST ScratchPad