1

我有在服务器中发布数据的代码,这是我的代码

List<NameValuePair> params = new ArrayList<NameValuePair>();
                    params.add(new BasicNameValuePair("phone", mPhoneNumber));
                    params.add(new BasicNameValuePair("prod_title", nama));
                    params.add(new BasicNameValuePair("prod_desc", des));

                    JSONObject json = jsonParser.makeHttpRequest(Constants.url_create_product, "POST", params);


                    // check log cat from response
                    Log.d("Create Response", json.toString());
                    try {
                       int success = json.getInt(Constants.TAG_SUCCESS);

                        if (success == 1) {
                            // successfully created user

                            Intent i = new Intent(getApplicationContext(), shoop3Activity.class);
                            i.putExtra("phone", mPhoneNumber);                      
                            startActivity(i);
                                // closing this screen
                            finish();
                        } else {
                            // failed to create user
                            Toast.makeText(getApplicationContext(),"Gagal bikin user", Toast.LENGTH_LONG).show();
                        }
                    } catch (JSONException e) {
                        e.printStackTrace();
                    }    
                    return null;
                }         

但它显示这样的错误

10-08 12:36:11.857: INFO/ActivityManager(59): Displayed activity shoop3.android.edu/.Activity3: 1074 ms (total 1074 ms)
10-08 12:36:16.037: ERROR/JSON Parser(881): Error parsing data org.json.JSONException: Value <div of type java.lang.String cannot be converted to JSONObject
10-08 12:36:16.037: DEBUG/Create Response(881): {"status":1}
10-08 12:36:16.127: INFO/ActivityManager(59): Starting activity: Intent { cmp=shoop3.android.edu/.setupstoreActivity (has extras) }
10-08 12:36:17.507: INFO/ActivityManager(59): Displayed activity shoop3.android.edu/.setupstoreActivity: 1191 ms (total 1191 ms)

请问有什么解决办法吗??它显示错误解析数据...字符串无法转换为 JSonObject


服务器正在响应 HTML 数据,而您正尝试将其解析为 JSON 数据。这行不通。您应该检查您传递给服务器的参数到底是什么,并在浏览器中进行测试。也许您需要登录/验证,但您没有传递 cookie 或其他什么?

4

3 回答 3

3

服务器正在响应 HTML 数据,而您正尝试将其解析为 JSON 数据。这行不通。您应该检查您传递给服务器的参数到底是什么,并在浏览器中进行测试。也许您需要登录/验证,但您没有传递 cookie 或其他什么?

于 2012-10-08T05:46:04.790 回答
0

发生这种情况是因为您可能错过了任何 JSon 标记或将 JSonArray 提到为 JSonObject,反之亦然。再次检查并告知问题是否仍然存在

于 2012-10-08T06:13:57.297 回答
0

在我的应用程序中,由于服务器响应,我收到此错误。它返回成功,但添加了不必要的信息:

<div style="border:1px solid #990000;padding-left:20px;margin:0 0 10px 0;">

<h4>A PHP Error was encountered</h4>

<p>Severity: Notice</p>
<p>Message:  Undefined offset: 2</p>
<p>Filename: dingdong_loop/Abc.php</p>
<p>Line Number: 559</p>


<p>Backtrace:</p>
<p style="margin-left:10px">
File: /********************/********/*******/******/*****/******/*****/jaabong/dondon/Api.php<br />
Line: 559<br />
Function: dingdong_loop_handler </p>

<p style="margin-left:10px">
File: /********************/********/*******/******/*****/******/*****/mycontroller.php<br />
Line: 793<br />
Function: call_dingdon_loop_firay   </p>

<p style="margin-left:10px">
File: //********************/********/*******/******/*****/******/*****/ /sample.php<br />
Line: 315<br />
Function: dingdong_loop_once    </p>


</div>
<div style="border:1px solid #990000;padding-left:20px;margin:0 0 10px 0;">

<h4>A PHP Error was encountered</h4>

<p>Severity: Notice</p>
<p>Message:  Undefined offset: 1</p>
<p>Filename: dingdong_loop/Api.php</p>
<p>Line Number: 559</p>


<p>Backtrace:</p>
<p style="margin-left:10px">
File: /********************/********/*******/******/*****/******/*****/Api.php<br />
Line: 559<br />
Function: dingdong_loop_handler </p>

<p style="margin-left:10px">
File: /********************/********/*******/******/*****/******/*****/ /sleep.php<br />
Line: 793<br />
Function: call_dingdong_loop_array  </p>

<p style="margin-left:10px">
File: //********************/********/*******/******/*****/******/*****/wakeup.php<br />
Line: 315<br />
Function: dingdong_loop_once    </p>


</div>{"isSuccess":true,"message":"Inserted successfully.","data":[]}

我设法将服务器响应作为字符串获取,然后将其解析为 JSONObject。

我联系了网络服务团队,他们修复了它。

有时是别人的错。

于 2019-01-31T13:12:11.003 回答