zoukankan      html  css  js  c++  java
  • jsonp

    1.jsonp是利用script标签可以引入外部资源,并将引入的外部资源作为js代码解析的特性,获取跨域资源
        - 如果外部资源是php文件,那么php文件会自动被服务器解析,解析之后的返回的数据,会作为js执行
    2. jsonp的封装: 
    function jsonp(url,success,data){
        1.解析数据:
        let str = "";
        for(let i in data){
            str += `${i}=${data[i]}&`;
        }
        2.创建script:
        let script = document.createElement("script");
        3.设置地址:
        var d = new Date();
        script.src = url + "?" +str+ "__qft=" + d.getTime();
        4.插入页面:
        document.body.appendChild(script);
        5.利用window在局部作用域声明全局变量:
        window[data[data.columnName]] = function(res){
            success(res);
        }
    }
        
    3. ajax和jsonp的总结
        - ajax,适合同源请求,或后台明确允许请求的资源
        - jsonp,适合请求跨域资源,但要求,后台使用字符串拼接的形式,执行js中的函数
        - ajax和jsonp不能互换,不能互相替代,各有各的使用场景
  • 相关阅读:
    事件类型
    program的发展史与两个数学方法
    字符统计与基本正则
    bom与dom
    css长度单位及颜色表示
    grid学习
    position定位的认识
    remark:node端口的close-wait
    css background属性设置
    Promise之我发现
  • 原文地址:https://www.cnblogs.com/yh-3175339026/p/12984609.html
Copyright © 2011-2022 走看看