android – 用于json对象的Volley Post方法

data={
    "request": {
       "type": "event_and_offer","devicetype": "A"
    },"requestinfo": {
       "value": "offer"
      }
}

如何从volley plz帮助发布此请求

JsonObjectRequest jsonObjReq = new JsonObjectRequest(
            Request.Method.POST,url,null,new Response.Listener<JSONObject>() {




                @Override
                public void onResponse(JSONObject response) {
                    Log.d(TAG,response.toString());

                    msgResponse.setText(response.toString());
                    hideProgressDialog();
                }
            },new Response.ErrorListener() {

                @Override
                public void onErrorResponse(VolleyError error) {
                    VolleyLog.d(TAG,"Error: " + error.getMessage());
                    hideProgressDialog();
                }
            }) {

        /**
         * Passing some request headers
         * */
        @Override
        public Map<String,String> getHeaders() throws AuthFailureError {
            HashMap<String,String> headers = new HashMap<String,String>();
            headers.put("Content-Type","application/x-www-form-urlencoded");
            return headers;
        }

js是我的jsson对象……我让我的jsson像这样……

JSONObject jsonobject_one = new JSONObject();
    try {
        jsonobject_one.put("type","event_and_offer");
        jsonobject_one.put("devicetype","I");

        JSONObject jsonobject_TWO = new JSONObject();
        jsonobject_TWO.put("value","event");
        jsonobject = new JSONObject();

        jsonobject.put("requestinfo",jsonobject_TWO);
        jsonobject.put("request",jsonobject_one);

        js = new JSONObject();
        js.put("data",jsonobject.toString());
        Log.e("created jsson","" + js);

但它没有回应plzz帮助的价值

解决方法

首先你的json数据:
JSONObject js = new JSONObject();
try {
    JSONObject jsonobject_one = new JSONObject();

    jsonobject_one.put("type","event_and_offer");
    jsonobject_one.put("devicetype","I");

    JSONObject jsonobject_TWO = new JSONObject();
    jsonobject_TWO.put("value","event");
    JSONObject jsonobject = new JSONObject();

    jsonobject.put("requestinfo",jsonobject_TWO);
    jsonobject.put("request",jsonobject_one);


    js.put("data",jsonobject.toString());

}catch (JSONException e) {
        e.printstacktrace();
}

然后你的json请求:

JsonObjectRequest jsonObjReq = new JsonObjectRequest(
        Request.Method.POST,js,new Response.Listener<JSONObject>() {
            @Override
            public void onResponse(JSONObject response) {
                Log.d(TAG,response.toString());

                msgResponse.setText(response.toString());
                hideProgressDialog();
            }
        },new Response.ErrorListener() {

            @Override
            public void onErrorResponse(VolleyError error) {
                VolleyLog.d(TAG,"Error: " + error.getMessage());
                hideProgressDialog();
            }
        }) {

    /**
     * Passing some request headers
     * */
    @Override
    public Map<String,String> getHeaders() throws AuthFailureError {
         HashMap<String,String>();
         headers.put("Content-Type","application/json; charset=utf-8");
        return headers;
    }

注意标题

如果你想在localhost中测试使用下面的代码并设置你的url连接你的localhost服务器和IP地址:
下面的代码将您的所有请求放在一个文本文件中,我尝试了它,它的工作原理

<?PHP
file_put_contents('test.txt',file_get_contents('PHP://input'));
?>

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...