我在嘗試POST JSON數組時遇到問題。Android POST JSON數組到服務器
對於我的Android代碼,我做通JSON陣列到服務器:
interests = // JSONArray of JSONObjects
final ArrayList<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair(PARAM_USERNAME, username));
params.add(new BasicNameValuePair(PARAM_INTERESTS, interests.toString()));
HttpEntity entity = new UrlEncodedFormEntity(params);
final HttpPost post = new HttpPost(UPDATE_INTERESTS_URI);
post.setEntity(entity);
// POST data to server
但是,當我從服務器讀取它使用:
$interests = $_POST["interests"];
echo $interets
它看起來像[{\"a\":\"1\"},{\"b\":\"2\"}]
代替[{"a":"1"},{"b":"2"}]
。第一個不能正確解碼,第二個可以正常工作。
那麼,爲什麼它不工作?
編輯:
當我看到在Android上就上崗前,在JSONArray.toString()看起來像[{"a":"1"},{"b":"2"}]
這解決了我的問題,謝謝 – Hank 2012-02-04 22:31:53