2

我想解析来自服务器的 JSON 响应,但我无法做到。请帮我

连接成功的服务器响应是

Database connection success....{"server_response":[{"code":"reg_true","0":"message=>Registration Success...Thank you....."}]}

我想解析它并在比较时使用 server_response 和代码值,以便在调试代码时执行 IF 语句。显示json = 数据库连接成功....{"server_response":[{"code":"reg_true","0":"message=>Registration Success...Thank you....."}] }

但随后它跳转到捕获(JSONException e)请帮助这是我的代码

        JSONObject jsonObject = new JSONObject(json);
        JSONArray jsonarry= jsonObject.getJSONArray("server_response");
        JSONObject JO = jsonarry.getJSONObject(0);
        String code = JO.getString("code");
        String message = JO.getString("message");

        if (code.equals("reg_true")) {

            showDialog("Registration Success",code,message);

        } else if (code.equals("reg_false")) {


            showDialog("Registration Failed",code, message);

        } else if (code.equals("login_true")) {
            Intent intent = new Intent(activity, HomeActivity.class);
            intent.putExtra("message", message);
            activity.startActivity(intent);
        } else if (code.equals("login_false")) {
            showDialog("Login Error...",code,message);
        }


    } catch (JSONException e) {
        e.printStackTrace();
    }
}
   public void showDialog(String title, String code, String message)
   {

      builder.setTitle(title);
       if(code.equals("reg_true")||code.equals("reg_false"))
       {

           builder.setMessage(message);
           builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
               @Override
               public void onClick(DialogInterface dialog, int which) {
                   dialog.dismiss();
                   activity.finish();
               }

           });
4

1 回答 1

2

例外是因为您的 json 响应中的特殊符号 =>。以有效格式发送有效的 json 字符串,如下所示:

Database connection success....{"server_response":[{"code":"reg_true","0":"message Registration Success...Thank you....."}]}

你可以试试。

于 2016-05-08T08:07:09.117 回答