2016-12-22 4 views
1

Это, как я посылаю запросGET параметр не послал Volley Android

// Tag used to cancel the request 
    String tag_json_obj = "string_req"; 


    String url = getResources().getString(R.string.ybase_path)+"strings_u.php"; 

    String tag_string_req = "req_login"; 
    StringRequest stringRequest = new StringRequest(Request.Method.GET, url, new Response.Listener<String>() { 
     @Override 
     public void onResponse(String response) { 
      Toast.makeText(getActivity(), response.toString(), 
        Toast.LENGTH_LONG).show(); 

     } 
    }, new Response.ErrorListener() { 
     @Override 
     public void onErrorResponse(VolleyError volleyError) { 

     } 
    }) { 
     @Override 
     protected Map<String, String> getParams() { 
      Map<String, String> params = new HashMap<String, String>(); 
      params.put("a_id", application_id); 
      return params; 
     } 

     @Override 
     public Map<String, String> getHeaders(){ 
      HashMap<String, String> headers = new HashMap<String, String>(); 
      headers.put("Content-Type", "text/html"); 

      //headers.put("apiKey", "xxxxxxxxxxxxxxx"); 
      return headers; 
     } 
    }; 



        AppController.getInstance().addToRequestQueue(stringRequest,tag_string_req); 

и на стороне сервера, я обработку запроса как

if(isset($_GET['a_id'])) 

Но, похоже, параметры не передаются только. Я искал решение с двух дней без везения.

+0

Что не так с этим методом? –

+0

Извините, вы отправляете данные на сервер, используя метод POST, вместо GET в вашем запросе. Если вы только получаете данные с сервера, тогда вы можете использовать метод GET. –

+1

@SagarGangawane это уже был ответ, так что [не публикуйте ответы в комментариях] (http://stackoverflow.com/help/privileges/comment), особенно когда ответ уже существует, хотя в качестве члена вы можете поддержать ответ на upvote если вам понравилось, спасибо –

ответ

2

Вы должны использовать Request.Method.POST вместо Request.Method.GET отправить параметры

StringRequest stringRequest = new StringRequest(Request.Method.POST, url, 
//                ^^^^ 

For further reading

UPDATE: вы должны использовать if(isset($_POST['a_id'])) вместо if(isset($_GET['a_id']))

+0

получил эту ошибку NetworkDispatcher.run: Необработанное исключение java.lang.NullPointerException: попытка вызвать виртуальный метод 'int java.lang.String.length() –

+0

@ShivaAcharjee кажется, что вы не получив ответа, опубликовать полную ошибку с редактированием в вашем вопросе –

+0

Извините, что ошибка была связана с чем-то другим. Кажется, я не получаю никакого ответа вообще. Поскольку OnResponse (String response) никогда не вызывается –

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