volley post非json格式数据并获取json数据

在使用JsonObjectRequest时无法post非json格式的数据,因而采用StringRequest获取到相应的数据后再转为json格式的数据。

//这里的上下文需要讨论
private static RequestQueue mRequestQueue = Volley.newRequestQueue(Global.getContext());

public interface IResponse{
    void subscribeData(Object data);
}

/**Post方式从网络获取数据 */
    public static void postDataFromNet(final IResponse iResponse, String url, final HashMap<String,String> map){
        StringRequest request = new StringRequest(
            Request.Method.POST,
            url,
            new Response.Listener<String>() {

                @Override
                public void onResponse(String response) {
                    try {
                        iResponse.subscribeData(new JSONObject(response));           //将数据返回
                    } catch (JSONException e) {
                        e.printStackTrace();
                    }
                }
            },
            new Response.ErrorListener() {

                @Override
                public void onErrorResponse(VolleyError volleyError) {
                    Log.e("#StringRequest:Error#", volleyError.getMessage());
                }
            }){

            @Override
            public Map<String, String> getHeaders() throws AuthFailureError {
                Map<String,String> header = new HashMap<>();
                header.put("token", "9FOYT495E6BCFLOKYE36F8C618533C3E");
                return header;
            }

            @Override
            protected Map<String, String> getParams() throws AuthFailureError {
                return map;
            }
        };
        request.setTag(""+url);
        mRequestQueue.add(request);
    }
时间: 2024-07-30 13:49:42

volley post非json格式数据并获取json数据的相关文章

JavaScript中,JSON格式的字符串与JSON格式的对象相互转化

前言:JSON是一个独立于任何语言的数据格式,因此,严格来说,没有"JSON对象"和"JSON字符串"这个说法(然而"菜鸟教程"和"W3school"使用了"JSON对象"和"JSON字符串"这个说法,我也有点懵),可以称为符合JSON格式的某某对象或者字符串,例如符合JSON格式的js对象,符合JSON格式的字符串(为啥不说成符合JSON格式的js字符串,因为在所有语言中字符串都有相同

Json文件 使用rapidjson获取Json数据

在游戏中使用Json来储存数据用作配置文件,既方便读取,有方便管理. 这里可以选择导出两种格式: 1.属性方式 [{"name":"cl","age":27,"sex":"M"}, {"name":"cbsss","age":25,"sex":"W"}, {"name":"gx&

AJAX制作JSON格式的局部实时更新数据的方法

废话不多,上代码,前台: 主要使用了死循环一秒钟读取JS一次去刷新页面(递归的思想)单独对ShowData这个DIV的数据进行刷新 ,个人觉得还是需要优化的.请大神指点 <script type="text/javascript"> $(function () { var i = 0; function setTimeOutPost() { $.ajax({ type: "post", url: "/UserControl/DoData.ash

C# 后台通过网络地址访问百度地图取回当前在地图上的经纬度,并将取回的复杂Json格式字符串反序列化(Newtonsoft.Json)

直接上代码:解释都在代码中 ak 要自己去百度地图申请. 其中申请ak的时候,有个属性render直接填*就行. namespace HampWebControl 是我的空间命名! namespace HampWebControl 是我的空间命名! namespace HampWebControl 是我的空间命名! using Newtonsoft.Json; using System; using System.IO; using System.Net; using System.Securi

angular json 格式的字符串转 json

var s = "[{"id":"5","skid":"2","specid":"38","pid":"24","proprice":"13","proimg":"","price":"5","inventor

jquery $.ajax 获取josn数据

<script type="text/javascript" src="jquery-1.9.1.js"></script> <script type="text/javascript"> function test() { $.ajax({ type: "get", cache: false, url: "../../ajax/Task.aspx", data: 'id

从php获取json数据使用js读取显示到网页笔记

php代码 <?php //json与数组转换 $array = array("username" => "hellojson","age" => 23,"sex"=>"M");//定义php数组 $res=json_encode($array); //var_dump($res); echo $res;//将结果输出到页面 ?> HTML代码 <html> <

android实现json数据的解析和把数据转换成json格式的字符串

利用android sdk里面的 JSONObject和JSONArray把集合或者普通数据,转换成json格式的字符串 JSONObject和JSONArray解析json格式的字符串为集合或者一般数据 package com.hck.test; import java.util.ArrayList; import java.util.List; import org.json.JSONArray; import org.json.JSONException; import org.json.

JavaScript处理json格式数据

JSON即JavaScript对象标记,是一种轻量级的数据交换格式,非常适用于服务器与JavaScript的交互.JSON是基于纯文本的数据格式. JSON是JavaScript的原生格式,可以使用JSON传输一个简单的String.Number.Boolean.数组.复杂的Object对象. JSON表示数组时,使用[]包含所有元素,每个元素用逗号分隔:Object对象在JSON中使用{}包含一系列无序的Key-Value键值对,value也可以表示一个Object或数组. JavaScrip