众所周知,retrofit2的api调用:
//初始化 拿到retrofit对象
Retrofit retrofit = new Retrofit.Builder()
.addConverterFactory(GsonConverterFactory.create()) //添加gson解析工厂 可以不加
.addCallAdapterFactory(RxJava2CallAdapterFactory.create())//添加rxjava2工厂 可以不加
.client(OkHttpUtil.buildClient())
.baseUrl(“https://www.jianshu.com/u/a3117795167c”)
.build();
//动态代理
ServiceApi serviceApi = retrofit.create(ServiceApi.class);
//代理对象调用接口方法 返回call对象 如果添加了rxjava支持 ,返回的对象可以是
// Observable<ResponseBody>servable<ResponseBody>或者Single
Call<ResponseBody> call = serviceApi .getCall(postBodyReq);
//步骤6:发送网络请求(异步)
call.enqueue(new Callback<ResponseBody>() {
//请求成功时回调
@Override
public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
try{
Log.w("tan",response.body().string());
}catch (Exception e){
e.printStackTrace();
}
}
//请求失败时回调
@Override
public void onFailure(Call<ResponseBody> call, Throwable throwable) {
}
});
网友评论