繁体   English   中英

我无法发布 com.android.volley.ServerError

[英]I cant post com.android.volley.ServerError

我尝试只使用此代码发布我的 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);

}

嗨,你可能有来自服务器端的错误来解码错误它是什么类型的错误使用这个

 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();
        }
    }

在 String res 中你会得到错误。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM