#php #java #android #curl #parsecom
Есть Android-приложение, оно отправляет на сервер через Parse.com один из параметров в формате Date: HashMapp = new HashMap(); p.put("created", Calendar.getInstance().getTime()); ParseCloud.callFunctionInBackground(f, p, v); Как передать этот параметр в таком же формате, но только через cURL в PHP? Пробовал передавать в массиве строковое значение или Date в виде массива, сервер не принимает такие запросы: array('created'=>'Sun Nov 12 2017 02:58:09 GMT+0300') array('__type'=>'Date','iso'=>'2017-11-11T12:35:39.273Z') Как понимаю, надо передать параметр в виде самого объекта Date, но вопрос как он будет точно выглядеть в сыром текстовом виде? Это сам код для выполнения cURL-запроса: // post fields $post_fields = array('created'=>'здесь должно быть значение для created'); // options $options = array( CURLOPT_URL => $target_url, CURLOPT_RETURNTRANSFER => true, CURLOPT_HEADER => true, CURLOPT_HTTPHEADER => $headers, CURLOPT_POST => true, CURLOPT_POSTFIELDS => http_build_query($post_fields), CURLOPT_CONNECTTIMEOUT => 20, CURLOPT_SSL_VERIFYPEER => false, CURLOPT_TIMEOUT => 20, CURLOPT_USERAGENT => $user_agent ); // curl $curl = curl_init(); curl_setopt_array($curl, $options); $data = curl_exec($curl); curl_close($curl);
Ответы
Ответ 1
В PHP не силен, но если нужна строка вида yyyy-MM-dd'T'HH:mm:ss.SSS'Z' то по-моему, тут надо просто привести спецсимволы, а именно: двоеточие, одиночную кавычку, дефис и точку, - к формату URL, то есть (":") заменить на ("%3a") ("'") заменить на ("%27") ("-") заменить на ("%2d") (".") заменить на ("%2e") тогда строка из вашего cURL-запроса примет вид: $post_fields = array('created'=>'2017%2d11%2d17%27T%2708%3a54%3a27%2e727%27Z%27'); P.S. По рекомендации пользователя eugeneek, может быть, имеет смысл заменить 'created' на 'createdAt'Ответ 2
Судя по исходникам SDK для Android: Все даты передаются в формате yyyy-MM-dd'T'HH:mm:ss.SSS'Z'. Нужный вам параметр называется createdAt. Получается вам нужно что-то типа: $post_fields = array('createdAt'=>'2017-11-17T08:54:27.727Z');
Комментариев нет:
Отправить комментарий