Я не могу опубликовать com.android.volley.ServerError - PullRequest
0 голосов
/ 30 октября 2019

Я пытаюсь опубликовать только свой php-скрипт с этим кодом, но у меня ошибка сервера like so

private static  final String URL1 = "https://exp.com/appLoc.php";

private void User_Enter(){
    StringRequest strRequest1 = new StringRequest(Request.Method.POST, URL1,
            new Response.Listener<String>(){
                 @Override
                 public void onResponse(String response){

                 }
             },
             new Response.ErrorListener(){
                 @Override
                 public void onErrorResponse(VolleyError error){
                       Toast.makeText(getApplicationContext(), error.toString(), Toast.LENGTH_SHORT).show();
                 }
             })
             {
                @Override
                protected Map<String, String> getParams(){
                        Map<String, String> params1 = new HashMap<String, String> ();

                        params1.put ("location",la+","+lo);
                        params1.put ("licence",shpref.getString (Current_user,null));`like so`
                        params1.put ("main","enter");



                        return params1;
                    }
                };

 queue.add(strRequest1);

}

1 Ответ

0 голосов
/ 05 ноября 2019

Привет, у вас может быть ошибка со стороны сервера, чтобы декодировать ошибку. Какой тип ошибки это использовать?

 public void ShowResponse_Error(VolleyError error, Context context) {

        if (error instanceof NetworkError) {

            Toast.makeText(context,
                    context.getString(R.string.internet_error),
                    Toast.LENGTH_LONG).show();

        } else if (error instanceof TimeoutError || error instanceof NoConnectionError) {
            Toast.makeText(context,
                    context.getString(R.string.timeout_error),
                    Toast.LENGTH_LONG).show();
        } else if (error instanceof AuthFailureError) {
            Toast.makeText(context,
                    context.getString(R.string.auth_error),
                    Toast.LENGTH_LONG).show();
        } else if (error instanceof ServerError) {

            DecodeError(context, error);


        }
    }

 private static void DecodeError(Context context, VolleyError error) {
        NetworkResponse response = error.networkResponse;
        try {
            String res = new String(response.data,
                    HttpHeaderParser.parseCharset(response.headers, "utf-8"));
            // Now you can use any deserializer to make sense of data
            JSONObject obj = new JSONObject(res);
            Toast.makeText(context,
                    obj.getString("message"),
                    Toast.LENGTH_LONG).show();

        } catch (UnsupportedEncodingException e1) {
            // Couldn't properly decode data to string
            e1.printStackTrace();
        } catch (JSONException e2) {
            // returned data is not JSONObject?
            e2.printStackTrace();
        }
    }

в строке Res вы получите ошибку.

...