#java #android #http #post #время
Как вытащить время сервера из ответа, который пришел на POST запрос?
Для отправки POST запроса с Android используется библиотека OKHTTP.
String post(String...url) throws IOException {
FormEncodingBuilder form = new FormEncodingBuilder();
RequestBody formBody =form.build();
Request request = new Request.Builder()
.header("Cookie", x)
.url(url[0])
.post(formBody)
.build();
Response response = client.newCall(request).execute();
return response.body().string();
}
Ответы
Ответ 1
В Response есть параметр Date, в котором передается текущее время сервера. Пример Response Headers: Date: Fri, 13 Nov 2015 23:24:28 GMT Content-Type: application/json Transfer-Encoding: chunked Connection: keep-alive Но в вашем методе post() возвращается только body, тогда как Date хранится в headers. Соответственно пример кода для получения даты: Date post(String...url) throws IOException { FormEncodingBuilder form = new FormEncodingBuilder(); RequestBody formBody =form.build(); Request request = new Request.Builder() .header("Cookie", x) .url(url[0]) .post(formBody) .build(); Response response = client.newCall(request).execute(); //return response.body().string(); //Возвращается только Body. return response.headers().getDate("Date"); //Возвращаем объект Date. }
Комментариев нет:
Отправить комментарий