Rxjava-flatMap 网络嵌套

本文深入探讨RxJava中的flatMap操作符,通过代码实例解析如何解决网络请求的嵌套问题。介绍如何利用flatMap实现单一网络请求的平铺转换,简化数据获取流程。
摘要由CSDN通过智能技术生成

这篇文章 主要是对Rxjava- flatMap 做的一个详细代码讲解

//单例
private HttpUtil() {

    //拦截器
    HttpLoggingInterceptor httpLoggingInterceptor = new HttpLoggingInterceptor();
    httpLoggingInterceptor.setLevel(HttpLoggingInterceptor.Level.BODY);
    //ok
    okHttpClient = new OkHttpClient.Builder()
            .connectTimeout(10, TimeUnit.SECONDS)
            .readTimeout(10, TimeUnit.SECONDS)
            .addInterceptor(new Interceptor() {
                @Override
                public Response intercept(Chain chain) throws IOException {
                //添加请求头
                    SharedPreferences nc = MyApplication.mContext.getSharedPreferences("nc", Context.MODE_PRIVATE);
                    String userId = nc.getString("userId", null);
                    String sessionId = nc.getString("sessionId", null);
                    if (TextUtils.isEmpty(userId) && TextUtils.isEmpty(sessionId)) {
                        return chain.proceed(chain.request());
                    } else {
                        Request build = chain.request().newBuilder()
                                .addHeader("userId", userId)
                                .addHeader("sessionId", sessionId)
                                .build();
                        return chain.proceed(build);
                    }
                }
            })
            .build();

    //retrofit
    Retrofit retrofit = new Retrofit.Builder()
            .baseUrl(MyUrlApi.BASE_URL)
            .addCallAdapterFactory(RxJavaCallAdapterFactor
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值