我无法使用android中的multipart实体将JSONArray字符串发送到php服务器。我试过以下但它不起作用:
MultipartEntity entity = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE,BOUNDARY,Charset.defaultCharset());
entity.addPart("invite_friend", new StringBody(friendsArray));
在PHP服务器端,它应该是:
'invite_friend' => array
(
0 => '800'
1 => '794'
)
可以做些什么,请提供建议。
答案 0 :(得分:1)
你可以这样做。
// Prepare Category Array
for (String mFrndsID : friendsArray) {
reqEntity.addPart("invite_friend[]", new StringBody(mFrndsID));
}
只需在数组中添加[]数组标记和paas值。 这里的invite_friend是数组标签。您可以使用循环传递此标记中的值。它将作为一个数组发布在服务器上。
请参阅此答案以了解更多详情
How to send the string array of values in one key word using post method to the server
这可能会对你有所帮助
答案 1 :(得分:0)
尝试使用此代码将多个值对发送到服务器端脚本。
String strUrl = "http://****/****.php";
url = new URL(strUrl);
HttpURLConnection connection = (HttpURLConnection) url
.openConnection();
connection.setRequestMethod("POST");
connection.setDoOutput(true);
OutputStreamWriter outputStreamWriter = new OutputStreamWriter(
connection.getOutputStream());
outputStreamWriter.write("user_names_giver=" +user_names_giver + "&tcredit="+tcredit+"&user_name_receiver="+user_name_receiver);
outputStreamWriter.flush();
outputStreamWriter.close();
InputStream iStream = connection.getInputStream();
BufferedReader reader = new BufferedReader(new
InputStreamReader(iStream));
StringBuffer sb = new StringBuffer();
String line = "";
while( (line = reader.readLine()) != null)
{
sb.append(line);
}
reader.close();
iStream.close();