Retrofit——简介

xiaoxiao2021-02-28  95

实下,当前开发app,网络框架已经不再是AsyncTask、Volley。很多开发者开始用Retrofit、OKHttp等。我们要跟上技术潮流。

笔者本着边学习边分享的态度,开始讲Retrofit,哪里讲的不对,大家多多指导。

今天讲Retrofit的简介,入门章节。

Retrofit,音标['rɛtrofɪt],中文含义是改进、更新、式样翻新。

Retrofit技术是网络请求框架,它的slogan是“A type-safe HTTP client for Android and Java”,意思是一种为Android和Java提供的类型安全的HTTP Client。

我们知道,通常的网络请求,要求框架满足从app端向服务端发送HTTP网络请求,然后获得服务端返回的数据结果,并解析。在这个基础上,要再满足带参数,满足GET、POST等方式,返回的可以使Json个是,可以使Xml格式。返回的Json或Xml最好能够直接解析成实体类对象。还包括处理通用的返回结构,通常是errno、errmsg、data。还有网络错误的情况的处理。

我们通过代码看看,Retrofit是如何实现这个过程的。

步骤1:

Retrofit把HTTP请求以interface的形式表达出来,你需要在你的工程中写上下面的接口,来表示一个和服务端的网络请求。

public interface GitHubService { @GET("users/{user}/repos") Call<List<Repo>> listRepos(@Path("user") String user); } 步骤2:

Retrofit框架会帮你生成一个实现这个接口的类,你可以调用Retrofit.java这个类的相关接口完成这个工作。

Retrofit retrofit = new Retrofit.Builder() .baseUrl("https://api.github.com/") .build(); GitHubService service = retrofit.create(GitHubService.class);

步骤3:

在步骤1中产生的每个Call,都可以向服务端发送一个同步或异步的HTTP请求。

Call<List<Repo>> repos = service.listRepos("octocat"); 下面,我们大概说一下Retrofit的特点:

使用注解(annotation)来描述HTTP请求,如上面的描述Get、Post请求类型,参数等;方便的URL参数替换方式和查询参数的支持;返回结果转换为对象,支持JSON、protocol buffers等格式;支持多部分请求体和文件上传;

今天先讲到这里,下一节我们具体讲API定义。

转载请注明原文地址: https://www.6miu.com/read-40454.html

最新回复(0)