簡體   English   中英

錯誤Volley庫com.android.volley.ParseError:org.json.JSONException:

[英]ERROR Volley Library com.android.volley.ParseError: org.json.JSONException:

我嘗試使用Volley Library發出PUT請求。 我已經獲得了請求,並使用了覆蓋方法getParam()來放置請求,但是對於此請求,我需要發送我之前創建的jsonOjbect。

但是在響應中,我有:

08-25 09:44:34.638: I/ViewPdf:  SaveDataToProxy ERROR(8512): 
error: com.android.volley.ParseError: org.json.JSONException: Value <br of type 
java.lang.String cannot be converted to JSONObject

這是我的方法連接:

public void SaveDataToProxy(JSONObject jsonObject){

    // Tag used to cancel the request
    String tag_json_obj = "json_obj_req";

    String url = Properties.getUrl_proxy() + ":" + Properties.getPort_proxy() +"/api/points/"+this.id_point;
    Log.i("url",url); 

    final ProgressDialog pDialog = new ProgressDialog(this);
    pDialog.setMessage("Loading...");
    pDialog.show(); 

    JsonObjectRequest jsObjRequest = new JsonObjectRequest
    (
            Request.Method.PUT, url, jsonObject, new Response.Listener<JSONObject>()
            {
                @Override
                public void onResponse(JSONObject response)
                {
                        Log.i(TAG + ":  SaveDataToProxy SUCCESS", "response: " + response);
                }

            }, new Response.ErrorListener() 
            {
                @Override
                public void onErrorResponse(VolleyError error) 
                {
                    Log.i(TAG + ":  SaveDataToProxy ERROR", "error: " + error);
                }
             }
    )

    {
        @Override
        public Map<String, String> getHeaders() throws AuthFailureError 
        {
            HashMap<String, String> headers = new HashMap<String, String>();
            headers.put("Content-type", "application/json");

            return headers;
        }
    };

    AppController.getInstance().addToRequestQueue(jsObjRequest, tag_json_obj); 
}

這是我發送的JSONObject.toString():

{
"depositProduct": [
    null
],
"collectionProduct": [
    null
],
"status": 1,
"end_hour": "04:00:00",
"type": "COLLECTION",
"id": 1,
"collector": "{\"address\":\"14 Rue de la serviellier\",\"city\":\"Germs-sur-l\\u0027oussouet\",\"fax\":\"0380910303\",\"zip_code\":\"65451\",\"transit_date\":\"2014-08-25 00:00:00\",\"name\":\"Jeanjean\",\"tel\":\"0643665316\",\"siret\":\"73282932000074\",\"weight\":0.0,\"volume\":0.0,\"id_erp\":20,\"point_id\":1,\"quantity\":0,\"id\":1}",
"closed_client": false,
"id_erp": 111,
"miscellaneous": "inf test2",
"infos": "test tablette",
"downtime": "2",
"form_type": "cerfa11352_02",
"sequence": 1,
"producer": "{\"address\":\"207 rue charles de gaulle\",\"city\":\"Montbard\",\"email\":\"Dupond.patrick@gmail.com\",\"fax\":\"0380954609\",\"zip_code\":\"21500\",\"id_erp\":\"C10018-1\",\"name\":\"Foyer mutualisteZZ\",\"waste_code\":\"215004\",\"waste_adr\":\"un 3291 Dechet d\\u0027hopital non specifie, NSA, 6.2II\",\"signature\":\"/mnt/sdcard/tour_1/point_1/producer_1.png\",\"siret\":\"73282932000074\",\"tel\":\"0380915454\",\"transit_date\":\"2014-08-25 00:00:00\",\"volume\":0.0,\"weight\":0.0,\"point_id\":1,\"quantity\":0,\"id\":1}",
"no_waste": false,
"factory": "{\"address\":\"Usine d\\u0027incineration les bouillots\",\"city\":\"Bayet\",\"fax\":\"0470456168\",\"zip_code\":\"03500\",\"name\":\"LUCANE\",\"tel\":\"0470454857\",\"siret\":\"97596145524658\",\"signature\":\"/mnt/sdcard/tour_1/point_1/factory_1.png\",\"refusal_support_reason\":\"0\",\"weight\":0.0,\"volume\":0.0,\"point_id\":1,\"operation_type\":0,\"id_erp\":31,\"quantity\":0,\"refusal_support\":0,\"id\":1}",
"id_tour": 1,
"begin_hour": "06:00:00",
"internal_error": false
}

我希望你能幫助我=)

編輯1:這是我的完整堆棧跟蹤,我們只能看到連接,而沒有什么很重要的...

08-25 10:21:03.106: D/Volley(29845): [195] BasicNetwork.logSlowRequests: HTTP response   for request=<[ ]
 http://192.168.0.60:80/api/points/1 0x6768b5f7 NORMAL 5>
 [lifetime=6891],   [size=7531], [rc=200], [retryCount=1]
08-25 10:21:03.106: I/ViewPdf:  SaveDataToProxy ERROR(29845): error:    com.android.volley.ParseError: org.json.JSONException: Value <br of type java.lang.String   cannot be converted to JSONObject
08-25 10:21:03.106: D/Volley(29845): [1] Request.finish: 6894 ms: [ ]     http://192.168.0.60:80/api/points/1 0x6768b5f7 NORMAL 5

這不是您的問題,這是服務器端的問題,服務器不會向您返回有效的json 它實際上會返回您的html代碼,以查看其返回的確切內容,只需為瀏覽器安裝add on,例如RESTClient for mozilla並將您的請求按相應的類型(post-get -...)發送到服務器,然后查看服務器結果。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM