【问题标题】:Get request from network and dataBase rxJava从网络和数据库获取请求 rxJava
【发布时间】:2021-08-07 00:31:41
【问题描述】:

我会从数据库获取requset,同时从网络获取请求。从网络请求保存在DateBase中,我想但它不能正常工作

fun loadMovie(id: Int): Single<AboutMovie> = database.getMovie(id = id)
        .onErrorResumeNext( aboutMovieService.getMovie(movieId = id) )
        .subscribeOn(Schedulers.io())
        .observeOn(AndroidSchedulers.mainThread())

【问题讨论】:

    标签: android kotlin networking rx-java android-room


    【解决方案1】:

    我不完全理解您想要实现的目标,但让我为您提供该代码。

    fun loadMovie(id: Int): Single<Movie> =
        database.getMovie(id = id) // get cached entry from database
            .onErrorResumeNext { // if any error occured
                getNetworkMovie(id = id) // do network request
                    .doOnSuccess { database.saveMovie(movie) } // on network request success save to database
            }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-08-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多