Retrofit初体验
来源:互联网 发布:电脑上的编程软件 编辑:程序博客网 时间:2024/05/16 06:14
Retrofit是一个三方网络请求框架,类似于Volley之类的。
添加依赖
compile 'com.squareup.retrofit2:retrofit:2.0.0-beta4'compile 'com.squareup.retrofit2:converter-gson:2.0.0-beta4'compile 'com.squareup.retrofit2:adapter-rxjava:2.0.0-beta4'compile 'com.google.code.gson:gson:2.6.2'
请求代码
public class RetrofitActivity extends BaseActivity { private static final String BASE_URL = "http://www.tngou.net/tnfs/api/"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_retrofit); query(); } private void query() { //1.创建Retrofit对象 Retrofit retrofit = new Retrofit.Builder() .addConverterFactory(GsonConverterFactory.create())//解析方法 .baseUrl(BASE_URL)//主机地址 .build(); //2.创建访问API的请求 RequestService service = retrofit.create(RequestService.class); Call<SingleImageBean> call = service.getImage("171"); //3.发送请求 call.enqueue(new Callback<SingleImageBean>() { @Override public void onResponse(Call<SingleImageBean> call, Response<SingleImageBean> response) { //4.处理结果 if (response.isSuccess()) { SingleImageBean result = response.body(); if (result != null) { Log.v("-->", result.toString()); } } } @Override public void onFailure(Call<SingleImageBean> call, Throwable t) { } }); }}
public interface RequestService { @GET("show") Call<SingleImageBean> getImage(@Query("id") String id);}
请求结果
小结
上面service.getImage(“171”) 方法经过拼装后其实访问的是http://www.tngou.net/tnfs/api/show?id=171
Get请求方式
@GET("group/{id}/users")Call<List<User>> groupList(@Path("id") int groupId);
@GET("group/{id}/users")Call<List<User>> groupList(@Path("id") int groupId, @Query("sort") String sort);
@GET("group/{id}/users")Call<List<User>> groupList(@Path("id") int groupId, @QueryMap Map<String, String> options);
Post请求方式
@POST("users/new")Call<User> createUser(@Body User user);
retrofot官网
0 0
- Retrofit初体验
- Retrofit初体验
- Retrofit初体验
- Retrofit初体验
- Retrofit初体验
- Retrofit初体验,复杂数据gson解析
- Android—-Rxjava与Retrofit初体验
- Android-Retrofit初使用
- Retrofit初了解
- Retrofit
- Retrofit
- Retrofit
- Retrofit
- Retrofit
- Retrofit
- Retrofit
- Retrofit
- Retrofit
- 【Hadoop】搭建完全分布式的hadoop
- ReactiveCocoa之简介(一)
- 【C】12864点阵液晶显示
- Java的接口和抽象类详解
- sed匹配并追加内容&符号作用
- Retrofit初体验
- C++输入输出流
- Android 准确过滤(禁止) Emoji表情
- 苹果MACBOOK SAP GUI JAVA版本配置 可以带router
- String,StringBuffer与StringBuilder的区别--详解
- UNIX网络编程 1-2章学习笔记
- 命令行kill掉某个进程
- C语言实现的RSA算法程序
- hadoop 分布式环境搭建与hdfs简单实用