Страницы

Поиск по вопросам

пятница, 13 марта 2020 г.

Отправка int массива методом POST

#android #post


Добрый день. Я использую AsyncTask и методом POST отправляю пару HashMap на сервер без проблем, но как быть с массивом int[]?  Как правильно отправлять
массив?
    


Ответы

Ответ 1



Думаю вам поможет Json List productIds = ... 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);

Комментариев нет:

Отправить комментарий