如何在android中以json格式发布这些数据

时间:2017-03-10 09:27:45

标签: android json

{   “消息”:“类别详细信息”,   “CategoriesDetails”:[     {       “catid”:1,       “catname”:“关于我们”,       “apiid”:1,       “apiurl”:“http://some url”,       “方法”:“POST”,       “json_datatype”:“JSON”     }   ] }

3 个答案:

答案 0 :(得分:0)

检查这个。我想帮助你。 http://hmkcode.com/android-send-json-data-to-server/

答案 1 :(得分:0)

创建JSONObject并将所需的所有数据放入其中。这是一个例子:

    JSONObject data = new JSONObject();
    try{
        data.put("key2", "value3");
        data.put("key2", "value2");
        //similarly put all the values here
        // you can add JSONObject or JSONArray also as the value
    }catch (JSONException e){
        e.printStackTrace();
    }

然后,您可以使用某些网络库,例如VolleyRetrofitOkHttp将其发送到服务器。

您可以在网上了解有关每种内容的更多信息。有足够的工作示例可供您学习!

这是Volley的一个示例请求:

JsonObjectRequest jsonRequest = new JsonObjectRequest(methodType,mUrl,params,getResponseListener(),getErrorListener()){
                @Override
                public Map<String, String> getHeaders() throws AuthFailureError {
                    //set request headers.
                    return setRequestHeaders();
                }
                @Override
                protected Response<JSONObject> parseNetworkResponse(NetworkResponse response) {
                    Log.d(TAG, "cookie : " + response.headers.get("Set-Cookie"));
                    saveResponseCookie(response); //get response headers.
                    return super.parseNetworkResponse(response);
                }
            };
            jsonRequest.setTag(requestTag);
            jsonRequest.setRetryPolicy(new DefaultRetryPolicy(
                    20000,
                    DefaultRetryPolicy.DEFAULT_MAX_RETRIES,
                    DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));
            requestQueue.add(jsonRequest);

详细了解排球here中的JsonObjectRequest

答案 2 :(得分:0)

我建议和Retrofit一起去。它是一个由Square维护的库,非常易于使用(参见链接中的简短教程),并将样板代码减少到最低限度。