#android #post
Добрый день. Я использую AsyncTask и методом POST отправляю пару HashMapна сервер без проблем, но как быть с массивом int[]? Как правильно отправлять массив?
Ответы
Ответ 1
Думаю вам поможет Json ListproductIds = ... JSONArray x = new JSONArray(); for(Integer productId : productIds){ x.put(productId); } или, если int[] JSONArray x = new JSONArray(); for(int k=0; k < size; k++){ x.put(productId[k]); } потом отправляем на сервер. Есть много методов, один вариант try { HttpClient client = new DefaultHttpClient(); String postURL = "http://somepostaddress.com"; HttpPost post = new HttpPost(postURL); List params = new ArrayList (); params.add(new BasicNameValuePair("intlist", x.toString())); UrlEncodedFormEntity ent = new UrlEncodedFormEntity(params,HTTP.UTF_8); post.setEntity(ent); HttpResponse responsePOST = client.execute(post); HttpEntity resEntity = responsePOST.getEntity(); if (resEntity != null) { Log.i("RESPONSE",EntityUtils.toString(resEntity)); } } catch (Exception e) { e.printStackTrace(); } ну и на сервере можно его потом обратно на массив перевести $list = $_POST['intlist']; $obj = json_decode($list);
Комментариев нет:
Отправить комментарий