Retrofit — типобезопасный REST клиент для Android и Java созданный Square, Inc.
Retrofit преобразует REST API в Java интерфейсы.
public interface GitHubService {
@GET("/users/{user}/repos")
List<Repo> listRepos(@Path("user") String user);
}
Класс RestAdapter генерирует реализацию интерфейса GitHubService.
RestAdapter restAdapter = new RestAdapter.Builder()
.setEndpoint("https://api.github.com")
.build();
GitHubService service = restAdapter.create(GitHubService.class);
Каждый вызов сгенерированного GitHubService делает HTTP запрос к удаленному веб-серверу.
List<Repo> repos = service.listRepos("octocat");
Аннотации используются для описания HTTP запроса:
- Замена URL параметров и поддержка параметров запроса.
- Преобразование объекта в тело запроса (например, JSON, protocol buffers).
- Multipart для передачи файлов.
Библиотека распространяется с открытым исходным кодом по дицензии Apache 2.0.
References
- Официальная страница с примерами и документацией
- Javadoc