使用 RXJava 和 Retrofit 获取标头信息

2023-12-28

我正在尝试将当前使用 Retrofit 的应用程序转换为使用 RX Java。 为了处理分页,我传统上是从响应标头中获取 nextPage URL。

@Override
    public void success(Assignment assignment, Response response) {
        response.getHeaders(); // Do stuff with header info
}

但是,自从切换到 RX Java 后,我不确定如何从改造调用中获取响应信息。

   @GET("/{item_id}/users")
    Observable<List<Objects>> getObjects(@Path("object_id") long object_id);

    @GET("/{next}")
    Observable<List<Objects>> getNextPageObjects(@Path("next") String nextURL);

有没有办法让我的改造调用返回我的标头信息以及我的类型化对象?


您可以使用

Observable<Response>

作为返回类型来获取响应详细信息

@GET("/{item_id}/users")
Observable<Response> getObjects(@Path("object_id") long object_id);

@GET("/{next}")
Observable<Response>getNextPageObjects(@Path("next") String nextURL);

这就是 Response 对象的样子

然后,您必须从可观察对象中解析标题和正文

serviceClass.getNextPageObjects("next").flatMap(new Func1<Response, Observable<List<Objects>>() {
    @Override
    public Observable<AuthState> call(Response response) {
         List<Header> headers = response.getHeaders();
         GsonConverter converter = new GsonConverter(new Gson());
         // you would have to change this to convert the objects to list
         List<Objects> list = converter.fromBody(response.getBody(),
                            YourClass.class);

        return Observable.from(list);
    }

}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 RXJava 和 Retrofit 获取标头信息 的相关文章

  • 无法解析符号“AndroidJUnit4”

    显然我需要正确的导入语句来解决这个问题 根据文档用于AndroidJUnit4 http developer android com reference android support test runner AndroidJUnit4 h
  • 在旧版本的 API 上更改 ContentObserver Onchange 上的 uri [重复]

    这个问题在这里已经有答案了 可能的重复 如何获取内容观察器中插入行的 URI https stackoverflow com questions 8432800 how to get uri of inserted row in my co
  • 如何让Service即使被系统杀死也无法删除?

    我正在创建一个蓝光过滤器应用程序 因此 我想显示所有应用程序的视图 我通过以下服务做到了 public class OverlayService extends Service public OverlayService View mVie
  • 使用选项卡式活动中的捆绑包将值从活动传递到片段

    我是一个java文盲 但仍在尝试开发一个供我个人使用的应用程序 我从 android studio 的 Tabbed Activity 开始 除了 MainActivity 中的一个片段和一个包之外 大部分没有改变 这是我的代码 主要活动
  • Android NumberPicker 带字符串

    I have customised the NumberPicker to show text The output is this 当我按 确定 时 我想将 e x 鼠标添加到我的列表 文章 中 我得到的是索引值 int 它由 array
  • 更改 Android Spinner 布局/设计

    我正在尝试修改设计Spinner http developer android com intl de reference android widget Spinner html小部件 我可以更改背景 但找不到更改右侧箭头图标的方法 有办法
  • 如何创建适用于 iPhone、iPad 和 Android 的 Extjs 应用程序?

    有人成功创建了适用于 iPhone iPad 和 Android 的 Extjs 应用程序吗 我知道 Sencha 不支持移动设备上的 Extjs 但我不想创建另一个仅针对移动设备的网站 我不需要奇特的移动界面 只需要基本的功能 我做了一些
  • Android TableRow 垂直拉伸以填充屏幕

    我正在尝试创建一个电话拨号器视图 使用 TableLayout 在 3x4 网格中创建 12 个按钮 我希望行垂直拉伸以平等地使用所有可用空间 但似乎 fill parent 在 TableRows 上不起作用 我不想使用 setMinim
  • 如何在phonegap上使用GCM处理android中的多个推送通知

    当推送通知到达时 如果用户无法查看该通知 他收到另一条通知 之前的通知正在更新为新的 但它不应该更新为最新的 我们需要单独显示每个通知 这可以使用 GCM 吗 我已经使用Phonegap来开发应用程序 PushPlugin 支持在有效负载中
  • 发送 OneSignal 推送通知时 Android 应用程序崩溃

    Android 应用程序在发送信号推送通知后立即崩溃 我收到这个错误 尝试查看其他 stackoverflow 答案 但没有帮助 请检查下面的代码 build gradle 和错误 不明白为什么它不起作用 P 请检查下面的代码 build
  • 如何查看Android Asset资源?

    我想检查 assets 文件夹中是否存在文件 我怎样才能做到呢 请帮忙 我向我的应用程序类之一添加了一个辅助方法 我假设 应用程序运行时 资产列表不会更改 the List
  • android:widgetLayout 和 android:layout 之间的区别?

    我得到一些奇怪的配置 其中 widgetLayout 配置列表项的内部空间 而布局配置整个项目列表和屏幕背景 有人能真正解释一下什么是 widgetLayout 吗 android layout 整个首选项的布局 包括标题 摘要和小部件 a
  • Android - 从服务器获取响应时验证 JSON 以避免 JSONException

    在我的一些与服务器通信并使用 http 获取响应的应用程序中 我使用 json 来格式化数据服务器端 当它到达设备时 我使用类似于我在 stackoverflow 上找到的代码 private class LoadData extends
  • MPAndroidChart StackedBarChart 显示值但不显示条形图

    我开始使用MPAndroidChart https github com PhilJay MPAndroidChart图书馆来建立一个StackedBarChart显示三个 y 值 这是代码 public class Plot final
  • Kotlin 中是否有类似于 #region #endregion 的语法?

    我知道我可以使用 region endregion 包围 C 中的代码片段 Kotlin 中是否有类似的语法 谢谢 region MyRegion protected void Page Load object sender EventAr
  • Android 中的字符串加密

    我正在使用代码进行加密和加密 它没有给出字符串结果 字节数组未转换为字符串 我几乎尝试了所有方法将字节数组转换为字符 但没有给出结果 public class EncryptionTest extends Activity EditText
  • Android同步onSensorChanged?

    这是我的问题的后续 Android线程可运行性能 https stackoverflow com questions 36395440 android thread runnable performance 我在理解应用程序的同步方法时遇到
  • ActionBar 中的进度条

    我正在使用一个应用程序 它将在应用程序内部加载一个网站 现在我想在操作栏中添加一个进度栏 而无需向上滑动来抑制功能 像那样 我在用Fragment在我的应用程序中 WebviewFragment public class WebviewFr
  • 如何在android中获取当前一周的所有天数?

    我想在字符串数组中获取本周的所有日期 我怎样才能做到这一点 提前致谢 I think你想要这样的东西 假设你总是想要从星期一开始的几周 以及 MM dd yyyy 的日期格式 DateFormat format new SimpleDate
  • 从 Android 中的过渡动画中排除 BottomNavigation

    我一直在四处寻找 但找不到有助于解决这个特定问题的答案 我的应用程序有一个自定义滑入 滑出效果 如下所示 Intent intent new Intent getApplicationContext MyActivity class sta

随机推荐

  • 与 2017 年智能感知不工作 C# 和 XAML

    我有一个奇怪的问题 我似乎无法解决 我的 XAML 智能感知不再显示 并且后面的代码仅显示预制成员 我所做的类和方法没有出现 此外 Visual Studios 无法识别其他页面 也无法识别导航 我尝试转到 工具 gt 文本编辑器 gt C
  • C# SqlCommand Connection.Open() 问题

    我有一个 C ASP NET Web 应用程序 我正在尝试使用数据库表中的列填充 ASP DropDownList My Code using System using System Collections Generic using Sy
  • Android Studio - 如何更改布局

    在 Eclipse 中 我可以右键单击我的布局 例如 LinearLayout 然后单击 更改布局 在 Android Studio 中 我没有看到类似的东西 我确实看到了变形 但现在它会随时出现 例如 如果您使用RelativeLayou
  • Windows 上的 Nginx 使用 WSGI

    现在我决定使用 Nginx 作为我最喜欢的网络服务器来部署 Django 我得到了一些 迷雾 我在 Windows 上 也就是说 当我尝试使用 Django 作为 FastCGI 时出现错误 似乎 Flup 无法加载 它给我错误 从网站上看
  • QSqlDatabase::open() 总是返回 true

    我正在尝试使用 Qt 框架连接到 SQL 数据库 不幸的是 尽管没有建立连接 db open 总是返回true 您可以设置任何密码 主机名等 我从对数据库没有任何影响的查询中得出这一点 我在 Ubuntu 14 04 上使用 LAMPP 我
  • 垂直对齐图像

    我有一个包含图像和 p 标签的 div 如下所示 我想根据段落的行数将图像垂直对齐在 div 中间 垂直对齐不起作用 我现在正在使用 JavaScript 来计算要添加到 margin top 的量 但更愿意使用 CSS 有任何想法吗 di
  • 使用 Django + Celery 更新 Haystack 搜索索引

    在我的 Django 项目中 我使用 Celery 我将 crontab 中的命令切换为定期任务 它运行良好 但它只是调用模型上的方法 是否也可以通过定期任务更新我的 Haystack 索引 有人这样做过吗 manage py update
  • x64 本机工具命令提示符和 x64 交叉工具命令提示符之间有什么区别?

    我在 64 位 Windows 8 1 上安装了 32 位 Visual Studio 2013 我有 5 个命令提示符 VS2013 的开发人员命令提示符 VS2013 ARM 交叉工具命令提示符 VS2013 x64 交叉工具命令提示符
  • 具有多个命令的 CTest

    我正在使用 CTest 构建一些测试 通常 我可以简单地通过以下行设置测试 ADD TEST Test Name executable args 但是 我遇到了一个问题 我有一些测试需要运行两个命令才能工作 有什么方法可以在一个 ctest
  • TwoWay 或 OneWayToSource 绑定无法对只读属性起作用

    我有一个只读属性 需要在文本框中显示 并在运行时收到此错误 我已经设置了IsEnabled False IsReadOnly True 没有运气 其他搜索说只读应该修复它 但不适合我 我有一个丑陋的解决方法 添加一个虚拟设置器 没有代码很难
  • Internet Explorer 中的图像数据集

    我有一个数组缓冲区 名为MEM 大于画布宽度 高度尺寸 我想将 arrayBuffer 数据绘制到画布上 imgData data set 应该可以工作 因为 imgData data 是一个 Uint8Array 它具有 set 方法 它
  • 如何在 ASP.NET Core 中获取 HttpContext.Current? [复制]

    这个问题在这里已经有答案了 我们目前正在使用 ASP NET Core 重写 转换我们的 ASP NET WebForms 应用程序 尽量避免重新设计 有一个部分我们使用HttpContext在类库中检查当前状态 我怎样才能访问HttpCo
  • 在invalidatelat观察者内增加reactivevalue

    我正在尝试构建闪亮的应用程序来进行一个非常简单的测验 我有一个包含 10 个问题的 data frame 用户点击回答 0 或 1 它一直有效 直到我尝试实施timer 倒数以便下一个问题在 5 秒后自动出现 使用invalidateLat
  • 如何在 netlogo 上创建计时器?

    对于我的迷宫项目 我想创建一个监视器按钮来跟踪海龟从开始到结束所需的时间 我该如何为计时器编写代码 查看reset timer and timer并在文档中 在迷宫设置期间 执行reset timer 在迷宫运行过程中 您可以使用以下命令检
  • 解构 C# 元组

    是否可以像 F 一样在 C 中解构元组 例如 在 F 中 我可以这样做 in F let tupleExample 1234 ASDF let x y tupleExample x has type int y has type strin
  • 如何在 Delphi 中使用 dll 导出的 C++ 类

    有没有办法在 Delphi for win32 中使用 win32 dll 导出的 C 类 是否有其他方法来归档类似的东西 COM NET 您无法导入类 您只能导入函数 鲁迪 维尔修斯 Rudy Velthuis 就该主题撰写了详细的文章
  • Spring Boot应用程序启动后立即关闭

    我正在尝试构建一个简单的 Spring Boot 应用程序 当我运行 Spring Boot 应用程序时 它在启动后立即关闭 下面是控制台日志 Spring Boot v1 4 1 BUILD SNAP
  • 符号导数和积分

    我想集成功能f4关于x然后求新函数的导数t 我可以用数值方法计算积分 有没有办法在R中以符号方式计算这个积分和导数 lambda 1 ci 1 aa lt function u k t f4 lt function x f1 lt func
  • 如何让实验性 ngTemplateOutlet 发挥作用?

    我正在尝试在 Angular2 中构建一个列表组件 该组件从组件的用户那里获取项目 列和项目字段的模板 所以我正在尝试使用ngTemplateOutlet and ngOutletContext 我读过的都是实验性的 但我无法让它发挥作用
  • 使用 RXJava 和 Retrofit 获取标头信息

    我正在尝试将当前使用 Retrofit 的应用程序转换为使用 RX Java 为了处理分页 我传统上是从响应标头中获取 nextPage URL Override public void success Assignment assignm