通过发布请求从Android到服务器端发送数组

时间:2015-05-15 11:29:58

标签: android arrays post request server

美好的一天。我将发送请求发送到php服务器端,就像这样

 HttpClient client = new DefaultHttpClient();
        HttpPost post = new HttpPost("my server name");

        MultipartEntity reqEntity = new MultipartEntity(
                HttpMultipartMode.BROWSER_COMPATIBLE);
        /*StringTokenizer tokens = new StringTokenizer(from.getText().toString(), "-");
        String shortstring = tokens.nextToken();
        String longstring = tokens.nextToken();
        StringTokenizer tokens2 = new StringTokenizer(to.getText().toString(), "-");
        String shortstringto = tokens2.nextToken();
        String longstringto = tokens2.nextToken();*/

        try {
            reqEntity.addPart("type", new StringBody("3"));

服务器端像这样接收它

   Array
    (

    [type] => 3


)

所有看起来都很好,他希望我发送给他一个数组。我确实发送它像这样

     ArrayList<String> array = new ArrayList();
       aray.add("hello");
 reqEntity.addPart("array", new StringBody(array.toString()));

他像这样收到它

 Array
    (

    [type] => 1
    [array]=> [hello];



)

一切似乎都很好,但他认为我发错了,他希望发送数组,这样他就可以这样接收它。

 Array
        (

        [type] => 1
        [array]=> Array(
                    [header name of my array]=>"value of array"

                    )



    )

我google每一点都读到每个网站的每一行,并没有找到任何接近他想要的东西,就像我发送数组一样,它就像我写的那样,否则他只想要用KEY写入另一个数组内的数组内部数组的名称和内部数组的VALUE,我不知道但不知道我的意见以他想要的方式不可能。所以它可能吗?我可以按照他上次编写的代码中的方式发送数组吗? / p>

2 个答案:

答案 0 :(得分:0)

抱歉没有足够的积分发表评论。但是您需要提供有关您正在使用的服务器的更多信息。

如果您使用的是PHP,那么非常简单,一旦您建立了安全连接,您只需要以下列方式发送响应:

$response["success"] = 0;
$response["message"] = "Some Message";
die(json_encode($response));

答案 1 :(得分:0)

 JSONObject jsonObject =new JSONObject();


        JSONArray taskDoneJsonArray= new JSONArray();
taskDoneJsonArray.add("aa");
        JSONArray nextStepsJsonArray= new JSONArray();
nextStepsJsonArray.add("bb");

        try {
            jsonObject.put("accessToken", "something");
            jsonObject.put("taskDone",taskDoneJsonArray);
            jsonObject.put("nextTask",nextStepsJsonArray);
            jsonObject.put("issueRemaining",issuesQueriesJsonArray);
        }
        catch (JSONException jsonException){
            ToastMessage.show(context,context.getResources().getString(
                    R.string.error)+jsonException.getMessage());
        }

现在使用jsonObject