Chapter 1. Overview

Interacting with HTTP-based services armed only with the relatively low-level classes provided by the .NET Framework is possible, but often leads to your having to repeat the same boilerplate code over and over again as well as evolve your own set of helper methods to translate your objects to and from the text-based world of HTTP requests and responses into the object-based world of .NET consumers of HTTP services. The Spring.Rest project contains the RestTemplate helper class which allows developers to focus on the issues of delivering business value in their applications rather than focusing on low-level plumbing concerns.

RestTemplate provides higher level methods that correspond to each of the six main HTTP methods that make invoking many RESTful services a one-liner and help to enforce REST best practices. It is conceptually similar to other template classes in Spring, such as AdoTemplate and NmsTemplate. It's behavior can be customized by providing callback methods and configuring the IHttpMessageConverters used to marshal objects into the HTTP request body and to unmarshall any response back into an object.

This documentation describes how to use the RestTemplate and its associated IHttpMessageConverters.

Spring.NET REST Client Framework supports the following .NET Frameworks :

RestTemplate has been available in the Java version of the Spring Framework for many years and has recently been adapted to use proper .NET idioms.