标签:headMap string responseBody put 网络 嵌套 Rxjava new public
public void lastRequest(final HttpListener mHttpListener) {
Map<String, String> map = new HashMap<>();
map.put("phone", "13568574500");
map.put("pwd", "123456");
final Observable<ResponseBody> post = this.httpService.post("small/user/v1/login", map);
post.subscribeOn(Schedulers.io())
.observeOn(Schedulers.io())
.doOnNext(new Consumer<ResponseBody>() {
@Override
public void accept(ResponseBody responseBody) {
try {
String string = responseBody.string();
Gson gson = new Gson();
LoginBean loginBean = gson.fromJson(string, LoginBean.class);
headMap = new HashMap<>();
headMap.put("userId", loginBean.getResult().getUserId() + "");
headMap.put("sessionId", loginBean.getResult().getSessionId());
JSONObject object = new JSONObject();
object.put("commodityId", 5);
object.put("count", 156);
JSONArray array = new JSONArray();
array.put(object);
Log.e("jsonStri", array.toString());
put = HttpUtils.this.httpService.put("small/order/verify/v1/syncShoppingCart", headMap, array.toString());
} catch (Exception e) {
e.printStackTrace();
}
}
}).subscribeOn(Schedulers.io())
.flatMap(new Function<ResponseBody, ObservableSource<ResponseBody>>() {
@Override
public ObservableSource<ResponseBody> apply(ResponseBody responseBody) {
return put;
}
}).doOnNext(new Consumer<ResponseBody>() {
@Override
public void accept(ResponseBody responseBody) {
try {
Gson gson = new Gson();
JoinShopping joinShopping = gson.fromJson(responseBody.string(), JoinShopping.class);
if (joinShopping.getStatus().equals("0000")) {
Log.e("加入购物车成功", "----");
shopping = HttpUtils.this.httpService.get("small/order/verify/v1/findShoppingCart", headMap);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}).flatMap(new Function<ResponseBody, ObservableSource<ResponseBody>>() {
@Override
public ObservableSource<ResponseBody> apply(ResponseBody responseBody) {
return shopping;
}
}).subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Consumer<ResponseBody>() {
@Override
public void accept(ResponseBody responseBody) {
try {
mHttpListener.success(responseBody.string());
} catch (IOException e) {
e.printStackTrace();
}
}
});
}
标签:headMap,string,responseBody,put,网络,嵌套,Rxjava,new,public 来源: https://blog.csdn.net/qq_43577742/article/details/93890433
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。