2016-07-15 10 views
0

Как я могу опубликовать строку на веб-сервере PHP и получить JSONArray в ответ с помощью библиотеки Volley в Android. Ниже приведен мой код, в котором я хочу отклик. Как я могу отправить строку и получить JSONArray в ответ, используя эту функциюAndroid Volley Post String и Get JSONArray

Смотрите этот код, если он работает

JsonArrayRequest(Method.POST,Config.VIEW_PROFILE_URL, 
       new Response.Listener<JSONArray>() { 
        @Override 
        public void onResponse(JSONArray response) { 
         //calling method to parse json array 
         parseData(response); 
        } 
       }, 
       new Response.ErrorListener() { 
        @Override 
        public void onErrorResponse(VolleyError arg0) { 
         // TODO Auto-generated method stub 

        } 
       }){ 

      protected Map<String, String> getParams() throws AuthFailureError { 
       Map<String, String> params = new HashMap<>(); 
       params.put("user_name", user); 
       return params; 
      } 
     }; 
      MySingleton.getInstance(this).addToRequestQueue(jsonArrayRequest); 
     } 

// и получение на сервере как

$ имя пользователя = $ _ POST [» user_name "];

ответ

0

Следуйте за этим здесь link вы можете понять как метод JSONArray, так и JSONObject.

Другое дело, что POST для сервера зависит от вашего API, используя параметр и заголовок или concat с URL с ключом по StringRequest.

1

Используйте getParams() метода в запросе для отправки параметра на сервер
вы также можете установить строку как тело после того, как URL:

JsonArrayRequest request = new JsonArrayRequest(Request.Method.POST, "url", "you can send a string here as body", new Response.Listener<JSONArray>() { 
     @Override 
     public void onResponse(JSONArray response) { 
      // parse your json array 
     } 
    }, new Response.ErrorListener() { 
     @Override 
     public void onErrorResponse(VolleyError error) { 
      // handle errors here 
     } 
    }) { 
     @Override 
     protected Map<String, String> getParams() { // send parameters here 
      Map<String, String> params = new HashMap<>(); 
      params.put("key1", "value1"); 
      // add other parameters 
      return params; 
     } 
    }; 
    MySingleton.getInstance(this).addToRequestQueue(request); 
+0

Я хочу, чтобы опубликовать имя пользователя строкового значения, имеющим ключ «user_name» Скажите мне, используя ваш метод, как я буду отправлять строку на php-сервер и получать там в php? –

+0

@ ZeshanMasood просто поместил ваши параметры ключевого значения в 'getParams()', как я сделал, и вы можете найти много примеров для получения параметров в php –

+0

Тогда wht, чтобы сделать это, «вы можете отправить строку здесь как тело» –

Смежные вопросы