av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

android - 在rxjava中map內進行錯誤處理應該怎么寫?

瀏覽:137日期:2024-02-26 14:11:56

問題描述

我的需求是這樣的:

第一個請求是login,拿到token

第二個請求是用token作為參數(shù)去拿到用戶信息 目前的寫法是這樣的:

subscription = APIHelper.getAPIS().login(mUsername, mPwd).flatMap(new Func1<LoginSuccess, Observable<User>>() { @Override public Observable<User> call(LoginSuccess loginSuccess) {//存一下token 略return APIHelper.getAPIS().getUserInfo(loginSuccess.getId()); }}).map(new Func1<User, User.UserBean>() { @Override public User.UserBean call(User user) {return user.getUser(); }}).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).doOnSubscribe(new Action0() { @Override public void call() {showLoading(R.string.login_message); }}).subscribe(new Subscriber<User.UserBean>() { //onError,onCompleted,略 @Override public void onNext(User.UserBean userBean) { //存一下用戶信息,提示登錄成功 略startActivity(new Intent(LoginActivity.this, MainActivity.class));finish(); }});

目前的問題:在login和userinfo兩個接口的地方?jīng)]有做錯誤處理。 在一些文章中看到可以在map里面做錯誤處理,但是我現(xiàn)在的寫法只有后一個(userinfo)可以處理。 問題:

map中判斷失敗,進行處理以后后面的subscribe方法還會執(zhí)行么?里面的onError,onCompleted回調會執(zhí)行么?

如果使用了flapmap,第一個接口(login)的錯誤處理怎么辦?

問題解答

回答1:

代碼正常執(zhí)行完會進入onCompleted,出錯了會進入onError;

可以在 maptry-catch處理錯誤;也可以在 onError 做統(tǒng)一處理。

.filter(userBean -> { // 請求失敗 if (userBean.getCode() == 999) {Toast.makeText(MyActivity.this, userBean.getMsg(), Toast.LENGTH_SHORT).show();return false; } return true;}).subscribe(userBean -> { // 請求成功 startActivity(new Intent(LoginActivity.this, MainActivity.class)); finish();}, throwable -> { // 程序異常 Log.e('TAG', 'Error:' + throwable.getMessage()); // Toast.makeText(context, '登錄失敗', Toast.LENGTH_SHORT).show();});

回答2:

在onError中處理就可以了。

標簽: java
相關文章:
主站蜘蛛池模板: 日韩精品一区二区三区视频播放 | 日本不卡一区二区三区在线观看 | 亚洲精品国产综合区久久久久久久 | 国产成人免费视频网站高清观看视频 | 毛片免费看的 | 久久这里有精品 | 国产在线播 | 日韩精品在线播放 | 国产成人一区二区 | 亚洲一区视频在线 | 久色视频在线 | 免费欧美视频 | 97国产精品视频人人做人人爱 | 91精品久久久久久久久 | 亚洲天堂日韩精品 | 欧美四虎 | 亚洲电影成人 | 欧美精品在欧美一区二区 | 午夜天堂精品久久久久 | www天天操 | 日韩一区二区三区在线视频 | 欧美色欧美亚洲另类七区 | 黄色片在线看 | 精品欧美乱码久久久久久 | 国产高潮好爽受不了了夜夜做 | 精精国产xxxx视频在线野外 | 国产精品一区在线观看 | 999久久| 成人在线视频一区二区三区 | 国产免费一区二区 | 亚洲网站在线观看 | 黄色在线免费观看视频网站 | 亚洲欧美一区二区三区在线 | 精品日韩一区二区三区av动图 | 欧美一区成人 | 色婷婷亚洲 | 国产成人在线一区二区 | 一区二区三区中文字幕 | 日韩欧美中文在线 | 毛片av免费在线观看 | 日本久久网 |