在Android中使用HttpPost发送对象数组

时间:2015-02-06 03:30:49

标签: java android http-post httpclient

我有一个应用程序通过HttpPost将对象发送到api。我有一些样本:

List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(4);
nameValuePairs.add(new BasicNameValuePair("Destination", destination));
nameValuePairs.add(new BasicNameValuePair("Description", description));
nameValuePairs.add(new BasicNameValuePair("CreatorName ", myName));

在这个对象中,我有一个&#34; User&#34;对象,具有DisplayName和Phone。如何通过HttpPost发送此数组?服务器无法识别以下内容(引号被转义):

nameValuePairs.add(new BasicNameValuePair(&#34; Users&#34;,&#34; [{&#34; Destination&#34;:&#34; St.Louis&#34;,&#34; Phone& #34;:&#34; 1234&#34;}]&#34));

3 个答案:

答案 0 :(得分:1)

最简单的方法是将Array转换为String(或JSON字符串)。然后在作为实体传递后,使用您的服务器对其进行编码。

答案 1 :(得分:1)

试试这个

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<html>
</html>
<body>
<div id="fora">
<a href="#1">1</a>,
<a href="#2">2</a>,
<a href="#3">3</a>.
</div>
    
<div id="mydiv">   
<div id="divforh">
<li><h2 id="1">1. Text 1...</h2></li>

<li><h2 id="2">2. Text 2...</h2></li>  

<li><h2 id="3">3. Text 3...</h2></li> 
</div>
</div>
</body>

答案 2 :(得分:0)

我认为这段代码应该有用。

nameValuePairs.add(new BasicNameValuePair("user[0]", gson.toJson(users.get(0))));
nameValuePairs.add(new BasicNameValuePair("user[1]", gson.toJson(users.get(1))));