zoukankan      html  css  js  c++  java
  • JSONP实现跨域

    JSONP实现跨域

    1.AJAX跨域访问

    <script type="text/javascript" src="http://manage.jt.com/js/jquery-easyui-1.4.1/jquery.min.js"></script>
    <script type="text/javascript">
        $(function(){
            alert("测试访问开始!!!!!")
            
            $.ajax({
                url:"http://manage.jt.com/web/testJSONP",
                type:"get",
                dataType:"jsonp",       //返回值类型callback(data)
                //jsonp: "callback",   //指定参数名称
                //jsonpCallback: "hello",  //指定回调函数名称
                success:function (data){
                    alert(data.id);
                    alert(data.name);
                    //转化为字符串使用
                    //var obj = eval("("+data+")");
                    //alert(obj.name);
                }    
            });    
        })
    </script>

    2.后端

    @Controller
    public class JSONPController {
        
        
        //http://manage.jt.com/web/testJSONP?callback=jQuery111104246765155397203_1541993772596&_=1541993772597
        //@RequestMapping(value="/web/testJSONP",produces="text/html;charset=utf-8")
        //@ResponseBody
        public String testJSONP(String callback) throws JsonProcessingException{
            ObjectMapper objectMapper = new ObjectMapper();
            //String json = "{'id':'1',"name":"tomcat"}";
            User user = new User();
            user.setId(100);
            user.setName("王思聪吃热狗");
            user.setAge(30);  
            
            String json = objectMapper.writeValueAsString(user);
            return callback + "(" + json +")";
        }
        
        //利用工具类形式实现JSONP
        @RequestMapping(value="/web/testJSONP")
        @ResponseBody    
        public MappingJacksonValue utilJSONP(String callback){
            
            User user = new User();
            user.setId(100);
            user.setName("王思聪吃热狗");
            user.setAge(30);
            MappingJacksonValue value =
                    new MappingJacksonValue(user);
            value.setJsonpFunction(callback);
            return value;
            
        }
    }
  • 相关阅读:
    Phoenix SQL总结
    awk基本用法
    集群性能调优-速度篇
    集群基准性能测试
    服务器基础环境搭建
    kafka命令行操作
    九、spring boot--JPA实现分页和枚举转换
    八、spring boot--mybatis框架实现分页和枚举转换
    七、spring boot开发web应用--mybatis-plus框架实现分页和枚举转换
    六、spring boot开发web应用--mybatis-plus为简化而生
  • 原文地址:https://www.cnblogs.com/gxlaqj/p/11723057.html
Copyright © 2011-2022 走看看