• json和jsonp的传输方式


    jsonp传输会解决跨域的问题

    $.ajax({
                    async: false,
    /*                 url: "http://127.0.0.1:8080/2015020601/background/mealshow/findNoWinner.html", */
                    url: "http://www.upalapp.com/2015020601/background/mealshow/findNoWinner.html",
                    type: "post",
                    dataType: 'jsonp',
                    //jsonp的值自定义,如果使用jsoncallback,那么服务器端,要返回一个jsoncallback的值对应的对象.
                    jsonp: 'jsoncallback',
                    //要传递的参数,没有传参时,也一定要写上
                    data: null,
                    timeout: 5000,
                    //返回Json类型
                    contentType: "application/json;utf-8",
                    //服务器段返回的对象包含name,data属性.
                   success : function(data) {
                        for(var i=0; i<data.length;i++){
                            var winner = data[i];
                            alert("wxName: " + winner.wxName + "awardsType: " + winner.awardsType + "uuid: "+ winner.uuid);
                        }
                        
                    },
                    error: function (jqXHR, textStatus, errorThrown) {
                        alert(textStatus);
                    }
                });

    后台

    res.setContentType("text/html;charset=UTF-8");
    String callbackFunName =req.getParameter("callback");//得到js函数名称
    String jsonData = ListToJson.listToJson(list);
    //String jsonData = "{"state":"empty"}";
    res.getWriter().write(callbackFunName + "("+jsonData+")"); //返回jsonp数据

    普通的ajax的json方式传输

     $.ajax({
                    type : 'GET',
                    contentType : 'application/json',
    /*                 url : "http://127.0.0.1:8080/2015020601/background/mealshow/startGame", */
                    url : "http://www.upalapp.com/2015020601/background/mealshow/findNoWinner.html",
                    processData : false,
                    awardsType: 1,
                    dataType : 'json',
                    success : function(data) {
                        for(var i=0; i<data.length;i++){
                            var winner = data[i];
                            alert("wxName: " + winner.wxName + "awardsType: " + winner.awardsType + "uuid: "+ winner.uuid);
                        }
                        
                    },
                    error : function() {
                        alert('出错了!');
                    }
                });

    后台

    可以直接使用SpringMVC的@ResponseBody注解

  • 相关阅读:
    MySQL备份与恢复(5)mysqldump的关键参数说明
    MySQL备份与恢复(4)mysqldump备份表
    MySQL备份与恢复(3)mysqldump备份多个库
    MySQL备份与恢复(2)mysqldump多个命令参数
    MySQL备份与恢复(1)意义及重要性
    Redis(二)
    Redis(一)
    前端像素单位之间的区别
    Matplotlib
    解决问题:[Vue warn]: Error in beforeUpdate hook: "TypeError: Cannot read property 'setAttribute' of undefined"
  • 原文地址:https://www.cnblogs.com/onlymate/p/4788901.html
Copyright © 2020-2023  润新知