Я пытаюсь выполнить POST JSONObject с помощью библиотеки Retrofit, но когда я вижу запрос на принимающей стороне, длина содержимого 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
, который является JSONObject
, не является нулевым или пустым (другие поля, конечно, прекрасны). В настоящий момент запрос выполнен, он выдается как: {"zip":19312,"useAccountZip":false,"controllerName":"mine","registrationCode":"GLD94Q"}
.
На принимающей стороне запроса я вижу, что запрос имеет Content-type: application/json
, но имеет Content-length: 0
.
Есть ли причина, почему отправка JSON в теле вроде этого не работает? Я пропустил что-то простое в использовании Retrofit?