我正在做一個Android應用程序,並且對我自己的服務器執行我的請求時遇到問題。我已經使用Play Framework的服務器,並從Json獲取參數:當我對我的服務器發出GET請求時,一切正常。但是當我發出一個POST請求時,我的服務器返回了一個未知的錯誤,關於有一個格式不正確的JSON或者它無法找到該元素。Android請求中的發佈參數
private ArrayList NameValuePair> params;
private ArrayList NameValuePair> headers;
...
情況下POST:
HttpPost postRequest = new HttpPost(host); // Add headers for(NameValuePair h : headers) { postRequest.addHeader(h.getName(), h.getValue()); } if(!params.isEmpty()) { postRequest.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8)); } executeRequest(postRequest, host); break;
我曾嘗試與請求的PARAMS做的,但它是一個失敗:
如果(! params.isEmpty()) {
HttpParams HttpParams = new BasicHttpParams();for (NameValuePair param : params) { HttpParams.setParameter(param.getName(), param.getValue()); } postRequest.setParams(HttpParams); }
而且還有不同的錯誤,取決於我做的請求。他們都是 'play.exceptions.JavaExecutionException':
- 'com.google.gson.stream.MalformedJsonException'
- '這不是一個JSON對象'
- 「要求對象中找到:「ID 「'
我希望有人能幫助我。
但我有一個List參數添加到請求。如果我以String格式創建自己的JSON,我必須手動執行它?感謝所有。 –
最後我明白了!非常感謝新! –
嗨,Neo,我已根據您的建議發佈了JSON。我如何查詢ASP.Net服務器中的參數? – Karthick