问题标签 [retrofit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1612 浏览

android - Retrofit-Idle java.lang.IllegalStateException:方法路径不包含 {}

我正在尝试为我的应用程序添加用于 json 请求的改造库。我收到一个非常简单但令人讨厌的错误。

当我执行此方法时:

我收到此错误:

但是当我像这样移除替换体时,

它工作正常。

另外,如果我添加参数,@Path("portCode") String portCode我会得到同样的错误。

为什么会这样?谢谢。

0 投票
10 回答
254717 浏览

android - Android 网络库比较:OkHTTP、Retrofit 和 Volley

一个学习 Android 的 iOS 开发人员提出的两部分问题,他正在开发一个 Android 项目,该项目将提出各种请求,从 JSON 到图像再到音频和视频的流式下载:

  1. 在 iOS 上,我广泛使用了AFNetworking项目。是否有适用于 Android 的等效库?

  2. 我已经阅读了 Square 的OkHTTPRetrofit以及Volley,但还没有使用它们开发的经验。我希望有人可以为每个人提供一些最佳用例的具体示例。根据我的阅读,OkHTTP 似乎是三者中最健壮的,并且可以处理该项目的要求(如上所述)。

0 投票
1 回答
29373 浏览

java - 如何使用 Square 的 Retrofit 网络库实现异步回调

作为一名开始使用 Android 的 iOS 开发人员,我遇到了 Retrofit。我了解如何实现同步请求,但在实现带有成功/失败回调的异步请求时遇到了麻烦。具体来说,我不清楚回调语法,并且在 Retrofit网站、介绍 Retrofit 的 Square博客文章或我见过的其他地方都没有具体示例说明如何执行此操作。有人可以在此发布一些示例代码吗?我在 Retrofit repo 中提出了一个问题,要求他们使用此信息更新 README。

0 投票
2 回答
3835 浏览

android - Android Retrofit 导致 Socket 超时异常

我正在使用 Android Galaxy S3 (/Nexus 7) 设备上的改造库对运行 Struts2 的 tomcat 服务器进行 POST 调用。POST 调用失败。tomcat 日志显示 Socket 超时异常。

使用通过 curl 完成的完全相同的标头的相同 POST 没有任何问题。我使用 charles 代理验证了线路上的数据是否匹配。

有关调试此问题的任何提示/想法。

后调用如下

如果我需要添加更多信息来更好地解释这一点,请告诉我。

0 投票
11 回答
76770 浏览

android - 用于测试的方形改造服务器模拟

使用方形改造框架时,模拟服务器进行测试的最佳方法是什么。

潜在途径:

  1. 创建一个新的改造客户端并将其设置在 RestAdapter.Builder().setClient() 中。这涉及解析 Request 对象并将 json 作为 Response 对象返回。

  2. 将此带注释的接口实现为模拟类并使用它代替 RestAdapter.create() 提供的版本(不会测试 gson 序列化)

  3. ?

理想情况下,我想让模拟服务器提供 json 响应,这样我就可以同时测试 gson 序列化。

任何示例将不胜感激。

0 投票
2 回答
6059 浏览

java - 如何配置 Square 的 Retrofit Client 以处理具有可变数量参数的请求

我正在构建一个 Android 应用程序,并且正在使用 Square 的 Retrofit 库进行短期网络调用。我对 Java 和 Android 比较陌生。到目前为止,我已经构建了这样的请求:

并这样称呼他们:

我需要实现一个接受可变数量参数的请求,不超过 10 个左右。必须单独定义它们并null为给定请求不存在的那些传递或传递一些东西是很麻烦的。有没有办法为请求定义一个接口,以便它接受变量编号或参数,并@Query为参数字典/映射中的每个元素自动构造 s?像这样的东西:

提前感谢您的任何提示。

编辑:在这种情况下,为与请求无关的参数传递 null 将不起作用。理想情况下,我可以@Query根据参数字典设置/创建 s,这样@Query如果它们的值为空,键就不会变为 a。

编辑:我正在专门寻找一种适用于 GET 请求的解决方案。

0 投票
1 回答
8964 浏览

java - 有没有办法设置一个基本请求参数以包含在使用 Square 的 Retrofit 库发出的每个请求中?

我正在使用 Square 的 Retrofit 库进行短期网络调用。@Query我在每个请求中都包含一些数据作为参数。像这样:

必须为. appVersion_ 有没有办法设置应包含在每个请求中的基本参数集?类似于我们如何设置 common 的东西?deviceTypeInterfaceAuthorization Header

0 投票
7 回答
20725 浏览

java - 使用 Square 的 Retrofit Client,是否可以取消正在进行的请求?如果有怎么办?

我正在使用 Square 的 Retrofit Client 从 Android 应用程序发出短暂的 json 请求。有没有办法取消请求?如果是这样,怎么做?

0 投票
1 回答
8847 浏览

java - Square Retrofit Client:如何启用/禁用 followRedirects?如何拦截重定向 URL?

我正在使用 Square 的 Retrofit Client 从 Android 应用程序发出简单的请求。像这样:

一个端点重定向到不同的 URL (s3)。由于对这个问题不重要的原因,重定向请求失败,因此我的callback.failure(error)方法被调用。我需要能够在某个时候访问和修改重定向 URL 或请求,最好在callback.failure(). 我怎样才能做到这一点?

或者,有没有办法设置类似的东西followRedirects = false(并以这种方式拦截重定向)?

0 投票
7 回答
84666 浏览

java - 将 GSON 序列化日期从 json 字符串转换为 java.util.date

我正在为我的 REST 调用使用 Retrofit 库。我所做的大部分工作都很顺利,但由于某种原因,我在将 JSON 时间戳字符串转换为java.util.Date对象时遇到了问题。进来的 JSON 看起来像这样。

我如何告诉 Retrofit 或 Gson 将这些字符串转换成java.util.Date objects?