• jsonp-小结(1)


    1、什么是jsonp?
            JSON with Padding  :  是json的一种使用模式,可以让网站从别的域名获取资料,即跨域获取数据。
            jsonp是一种非正式的传输协议。

    2、为什么要使用jsonp?
            受同源策略的限制,不同协议、域名、端口的网站不能相互访问页面信息和数据。
     

    3、jsonp核心原理:
            目标页面回调本地页面的方法,并传入参数。
     

    4、json和jsonp的区别?
            json是一种轻量级的数据交换格式,而jsonp是数据的(跨域)获取方式。
     

    5、jsonp跨域原理:
            在同源策略的限制下,在某个服务器下的页面无法获取到服务器意外的数据,但img、iframe、script等标签可以通过src属性请求到其他服务器下的数据。利用script标签的开放策略,可以实现跨域请求数据,但这也需要服务器的配合。
            当正常地请求一个JSON数据的时候,服务端返回的是一串JSON类型的数据,而使用JSONP模式来请求数据的时候,服务端返回的是一段可执行的JavaScript代码。
     

    6、在jQuery中如何通过JSONP来跨域获取数据?
        1)在ajax函数中设置dataType为'jsonp'
                eg:
                 $.ajax({
                    dataType: 'jsonp',
                    url: 'http://www.a.com/user?id=123',
                    success: function(data){
                            //处理data数据
                    }
                });
     
         2)利用getJSON来实现,只要在地址中加上callback=?参数即可
                eg:
                  $.getJSON('http://www.a.com/user?id=123&callback=?',                                 function(data){
                              //处理data数据
                   });
     

     
  • 相关阅读:
    [CSP-S模拟测试]:reverse(模拟)
    BZOJ1559 [JSOI2009]密码 【AC自动机 + 状压dp】
    BZOJ2257 [Jsoi2009]瓶子和燃料 【裴蜀定理】
    BZOJ2729 [HNOI2012]排队 【高精 + 组合数学】
    BZOJ1857 [Scoi2010]传送带 【三分法】
    BZOJ2118 墨墨的等式 【最短路】
    BZOJ5340 [Ctsc2018]假面 【概率dp】
    BZOJ5343 [Ctsc2018]混合果汁 【二分 + 主席树】
    BZOJ4869 [Shoi2017]相逢是问候 【扩展欧拉定理 + 线段树】
    BZOJ2001 [Hnoi2010]City 城市建设 【CDQ分治 + kruskal】
  • 原文地址:https://www.cnblogs.com/liuqinq/p/10018822.html
Copyright © 2020-2023  润新知