Я отправляю запрос с отложенной датой на сервер. Запрос POST выглядит так:
{
"text":"texst",
"deferred_date":"2019-09-14 14:00"
}
Я отправляю его через Почтальон или Unirest на Java и получаю 201 Принятый результат .
Сервер сохраняет это значение даты в формате «2019-09-14T14: 00: 00 + 03: 00».
Поскольку я изменяю свою дату в Java, окончательные данные сохраняются в строке
ГГГГ-ММ-дд чч: мм формат
DateFormat dateFormat = new SimpleDateFormat("YYYY-MM-dd hh:mm");
String deferredTime = "";
deferredTime = dateFormat.format(oldTime);
Мой исходный пост Unirest имеет следующую конструкцию корпуса:
.body("{\"text\":\"...\",\"deferred_date\":\"2019-09-14 06:03\"}")
и все работает нормально, но если я использую свою строку deferredTime в моем POST:
.body("{\"text\":\"...\",\"deferred_date\":\"" + deferredTime + "\"}")
Я получаю 400 Ошибка неверного запроса
{
"userMessage":"Invalid input.",
"errorCode":"invalid",
"fields":{
"deferred_date":[
"Posting date Date has wrong format. Use one of these formats instead: YYYY-MM-DDThh:mm[:ss[.uuuuuu]][+HH:MM|-HH:MM|Z]."
]
},
"internalMessage":"Invalid input."
}
Я не понимаю, почему это не работает, если переменная deferredTime String сохраняет то же значение «ГГГГ-ММ-дд чч: мм», которое использовалось ранее.
Есть предложения?