Retrofit retrofit = new Retrofit.Builder()
.addConverterFactory(ScalarsConverterFactory.create())
.addConverterFactory(GsonConverterFactory.create(gson))
.baseUrl(IPService.END)
.client(new OkHttpClient.Builder().build())
.build();
@POST("/friends/sendRequest")
Call<String> sendFriendRequest(...);
Response<String> a = myApi.sendFriendRequest(...).execute();
Reponse身体是“成功”。
我认为这不可能使用Gson和标量。改型无法识别它是纯字符串响应还是json字符串响应。
我的方法是只使用标量转换器,返回无处不在的字符串,然后用GSON在流中手动转换。
下面的例子在Kotlin中使用RxJava
@GET("{path}")
fun getVersion(@Path("path") hash: String): Single<String>
api.getVersion()
.map { val gson = GsonBuilder()
.setDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'")
.create()
gson.fromJson(it, VersionResponse::class.java)
}
主要内容:转换器标签JSF有转换器将其UI组件的数据转换为托管bean中使用的对象,反之亦然。 例如,我们可以将文本转换为日期对象,并且可以验证输入的格式。 要使用转换器标签,我们必须在节点中使用URI的以下命名空间。 转换器标签 以下是JSF 2.0中的重要转换代码: 标签 描述 将字符串转换为所需格式的数字值 将字符串转换为所需的日期格式 自定义转换器 创建一个自定义转换器
我在android studio中建立了一个转换器,当我每次按转换按钮时,距离部分(activity)就会崩溃。该应用程序说,特定的activity已经停止工作,该应用程序回到主要的activity。在android studio中没有显示任何错误,我想我的问题可能是在使用旋转器中的int pos,但我不确定。这是我最后要完成的元素。请帮帮忙。下面是Java,后面是XML。 和xml null
问题内容: 我遵循此示例在Spring中设置TCP客户端。下面是变压器所在的我的文件。有人可以帮助我删除变压器并按原样发送数据吗?如果我尝试删除该行甚至将其设置为null,则在构建项目时会遇到异常。 编辑: 现在,我可以使用自定义的序列化器/解串器发送消息了。但是很遗憾,我无法收到回复。这是我的序列化器/反序列化器: 我在序列化器/反序列化器的第一行完成了一些日志记录,但是从未打印过该日志。反过来
如果我尝试切换添加转换器的顺序,我将在接收XML时得到类似的错误(显然,因为Gson转换器试图转换XML响应): 我可以做什么来使每个转换器转换适当的响应? UPD:根据Marcin Jedynak的建议,我做了以下几点:
JSF提供内置转换器,将其UI组件的数据转换为托管bean中使用的对象,反之亦然。 例如,这些标签可以将文本转换为日期对象,也可以验证输入的格式。 对于这些标记,您需要在html节点中使用以下URI名称空间。 <html xmlns = "http://www.w3.org/1999/xhtml" xmlns:f = "http://java.sun.com/jsf/core"
如果您需要在Aurelia应用程序中转换某些值,则可以使用converters而不是手动将值转换为所需的格式。 转换日期 当我们想要将默认日期值转换为某种特定格式时,我们可以使用momentJS库。 这是一个用于操作日期的小型库。 C:\Users\username\Desktop\aureliaApp>jspm install moment 让我们创建一个新文件converters.js 。