我正在尝试使用 Retrofit 库发布 JSONObject,但是当我在接收端看到请求时,内容长度为0
.
在 RestService 接口中:
@Headers({
"Content-type: application/json"
})
@POST("/api/v1/user/controller")
void registerController(
@Body JSONObject registrationBundle,
@Header("x-company-device-token") String companyDeviceToken,
@Header("x-company-device-guid") String companyDeviceGuid,
Callback<JSONObject> cb);
它被调用,
mRestService.registerController(
registrationBundle,
mApplication.mSession.getCredentials().getDeviceToken(),
mApplication.mSession.getCredentials().getDeviceGuid(),
new Callback<JSONObject>() {
// ...
}
)
而且我确定registrationBundle
aJSONObject
不是 null 或空的(其他字段当然没问题)。在发出请求的那一刻,它注销为: {"zip":19312,"useAccountZip":false,"controllerName":"mine","registrationCode":"GLD94Q"}
。
在请求的接收端,我看到请求有Content-type: application/json
但有Content-length: 0
.
像这样在正文中发送 JSON 不起作用有什么原因吗?我在使用 Retrofit 时遗漏了一些简单的东西吗?