2
我必須通過API向服務器發送Date
對象(其實,Date
是服務器期望的對象)。我想使用Moshi,但我無法弄清楚如何使用自定義適配器來實現它。任何人?如何通過Moshi JSON序列化程序發送Date對象?
我必須通過API向服務器發送Date
對象(其實,Date
是服務器期望的對象)。我想使用Moshi,但我無法弄清楚如何使用自定義適配器來實現它。任何人?如何通過Moshi JSON序列化程序發送Date對象?
添加依賴於莫希的適配器包:
<dependency>
<groupId>com.squareup.moshi</groupId>
<artifactId>moshi-adapters</artifactId>
<version>1.4.0</version>
</dependency>
然後在你Moshi
實例上安裝Rfc3339DateJsonAdapter:
Moshi moshi = new Moshi.Builder()
.add(Date.class, new Rfc3339DateJsonAdapter())
.build();
它會給你日期爲RFC 3339格式的JSON字符串,像這樣:"2017-05-06T20:00:00-05:00"
。
'Date'不是在JSON中指定的東西。所以你的服務器不能期待Date對象。它期望Date的某種表示形式,不管是具有特定格式的字符串,還是時間戳記或複雜的結構。您首先需要確定您應該發送的格式。 – njzk2
我應該發送JSON –
但'Date'在'JSON'的上下文中沒有意義。所以這沒有意義。你必須弄清楚你的服務器期望的格式。 – njzk2