Web挨踢(IT)

web中的网络请求的同源访问策略和jsonP

2019-09-24  本文已影响0人  追逐_chase
web.jpeg

同源访问策略

image.png
有时我们在请求使用数据的时候,需要跨域请求数据,那怎么实现呢?

我们经常使用的就是jsonP



<script>


    function callBack(obj) {
        var data = obj["s"];
        // console.log(typeof data);

        var result = document.getElementsByClassName("result")[0];
        // result.removeChild();
        var ulobj = document.createElement("ul");
        ulobj.setAttribute("id","ulId");
        for (var i = 0; i < data.length; i ++){
            var liobj = document.createElement("li");
            liobj.innerText = data[I];
            ulobj.appendChild(liobj);
            // console.log(1111111)
        }
        result.appendChild(ulobj);

        var  script = document.getElementById("demoId");
        document.body.removeChild(script);

    }

</script>

<script>


      //输入框内容发生了变化
      function aa(eve) {
          var result = document.getElementsByClassName("result")[0];
          var text = document.getElementById("textId");
          if (text.value == ""){
              result.style.display = "none";
             return;
          }

        var ulObj = document.getElementById("ulId");
        if (ulObj){
            result.removeChild(ulObj);
            result.style.display = "block";
        }
            //创建script

                var sc = document.createElement("script");

                sc.src = "https://www.baidu.com/su?wd="+text.value+"&cb=callBack";

                sc.setAttribute("id","demoId");
                document.body.appendChild(sc);




    }

</script>


image.png

主要是通过script的属性src来请求数据,其实就是引入一个文件,回调一个callBack函数

image.png
上一篇 下一篇

猜你喜欢

热点阅读