Jsonp解决跨域1

Jsonp解决跨域1



1、jsonp如何解决跨域

前后端都需要改动

(1)前端:index.html代码如下:

index.html代码

describe("A

suite is just a function-ajax跨越完全讲解", function() {

// 测试方法

                     it("jsonp请求", function(done) {

                            //服务器返回的结果

                            var result;


                            $.ajax({

                                   url: base+"/get1",

                                   dataType:"jsonp",

                                   jsonp:"callback",

                                   cache:true,

                                   success:function(json){

                                          result= json;

                                   }

                            });


                            //由于是异步请求,需要使用setTimeout来校验

                            setTimeout(function(){

                                   expect(result).toEqual({

                                          "data": "get1 OK"

                                   });


                                   //校验完成,通知jasmine框架

                                   done();

                            }, 100);

                     });

              });

(2)后端:JSONPAdvice.java代码如下

JSONPAdvice.java代码

@ControllerAdvice

public classJSONPAdvice extends AbstractJsonpResponseBodyAdvice {

    public JSONPAdvice(){

        super("callback");

    }


}

2、jsonp是什么?

    JSONP(JSON with Padding)是JSON的一种“使用模式”,可用于解决主流浏览器的跨域数据访问的问题。由于同源策略,一般来说位于server1.example.com 的网页无法与不是 server1.example.com的服务器沟通,而 HTML 的

你可能感兴趣的:(Jsonp解决跨域1)