@Headers({"Content-type:application/json;charset=UTF-8"})//需要添加头
@POST("Api")
Observable<JsonObject> getData(@Body RequestBody info);
-
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(baseUrl)
.addConverterFactory(GsonConverterFactory.create())
.addCallAdapterFactory(RxJava2CallAdapterFactory.create()) // 支持RxJava
.build();
QueryLocalRecords queryLocalRecords = new QueryLocalRecords();
String request = new Gson().toJson(queryLocalRecords);
RequestBody body = RequestBody.create(MediaType.parse("application/json;charset=UTF-8"), request );
RetrofitServiceApi service = retrofit.create(RetrofitServiceApi.class);
Observable<JsonObject> observable = service.getData(body);
observable.subscribeOn(Schedulers.io()) // 在子线程中进行Http访问
.observeOn(AndroidSchedulers.mainThread()) // UI线程处理返回接口
.subscribe(new Observer<JsonObject>() { // 订阅
@Override
public void onCompleted() {
}
@Override
public void onError(Throwable e) {
Log.e("zhu", "e" + "=======" + "" + e.getMessage());
}
@Override
public void onNext(JsonObject jsonObject) {
Log.e("zhu", "jsonObject" + "=======" + "" + jsonObject.toString());
}
});