被 try-catch 包围的 JSONObject 不起作用

我基本上是在做一个登录注册android项目。我的注册运行良好,但我在 try catch 中的代码不起作用。所以当我点击注册按钮时,用户注册可能一直发生。


下面是我在java中的注册函数:


private void registerUser() {

        final String username = register_Username.getEditText().getText().toString();

        final String email = register_Email.getEditText().getText().toString();

        final String password = register_Password.getEditText().getText().toString();


        dialog.setMessage("Registering User...");

        dialog.show();

        StringRequest request = new StringRequest(Request.Method.POST, Constants.URL_REGISTER,

                new Response.Listener<String>() {

                    @Override

                    public void onResponse(String response) {

                        dialog.dismiss();   

                        try {

                            JSONObject jsonObject= new JSONObject(response);                        

                            Toast.makeText(MainActivity.this,jsonObject.getString("message"),Toast.LENGTH_SHORT).show();  

                        } catch (JSONException e) {

                            e.printStackTrace();

                        }

                    }

                },

                new Response.ErrorListener() {

                    @Override

                    public void onErrorResponse(VolleyError error) {

                        dialog.hide();

                        Toast.makeText(MainActivity.this,"Error",Toast.LENGTH_SHORT).show();

                    }

                }){

            @Override

            protected Map<String, String> getParams() throws AuthFailureError {

                        Map<String,String> params = new HashMap<>();

                        params.put("username",username);

                        params.put("email",email);

                        params.put("password",password);

                        return params;

            }

        };


        RequestHandler.getInstance(this).addToRequestQueue(request);

    }



'error' 或 'message' 不能被 Toasted。我该怎么办?


翻过高山走不出你
浏览 268回答 2
2回答

函数式编程

利用函数 JSON.parse() 方法将字符串解析为 JSONObject。然后遍历到 JSONObject 中的“消息”数据。

梦里花落0921

我通过使用 trim() 从字段中获取字符串解决了这个问题。final String username = register_Username.getEditText().getText().toString().trim();final String email = register_Email.getEditText().getText().toString().trim();final String password = register_Password.getEditText().getText().toString().trim();希望这会有所帮助!
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java