美文网首页
跨站请求JSONP

跨站请求JSONP

作者: 两点半的杂货铺 | 来源:发表于2018-03-01 13:31 被阅读9次

一、为什么用JSONP

由于 浏览器同源策略:XMLHttpRequest,实际当我们想别的网站利用ajax发送请求,别的网站实际上收到了我们的请求,并返回给了我们数据,但是因为浏览器的策略,并没用把数据展示给我们
我们发现,但是想图片标签的中的src属性似乎可以跳过这种策略,我们可以利用有src属性的利用创建script块写一个js引入,但如果只是但但用这种方法,我们发现js脚本中获取的是文本,实际上是不符js代码规范的,这里我们就给在后台处理成符合规范的形式返回

image.png
利用上面构造的list函数就可以执行
这是原理
    function submitJson2() {
            var tag = document.createElement('script');
            tag.src = 'http://www.jxntv.cn/data/jmd-jxtv2.html?callback=list&_=1454376870403';
            document.head.appendChild(tag);
            //document.head.removeChild(tag);
        }
            function list(arg) {
           console.log(arg)
        }
  • 利用ajax

传给后台get接受的值,然后告诉后台生成的封装函数

    function submitJsonp4() {
            $.ajax({
                url: 'http://www.jxntv.cn/data/jmd-jxtv2.html',
                type: 'POST',
                dataType: 'jsonp',
                jsonp: 'callback',
                jsonpCallback: 'func'
            })
        }

  • 调用封装函数
     function list(arg) {
           console.log(arg)
        }

后台写法


image.png

相关文章

  • 跨站请求JSONP

    一、为什么用JSONP 由于 浏览器同源策略:XMLHttpRequest,实际当我们想别的网站利用ajax发送...

  • jsonp基础原理

    jsonP实现的效果和ajax非常类似,但jsonP并不是ajax的一部分。 jsonP主要用于解决跨站数据请求,...

  • ajax跨域请求

    ajax跨域请求(jsonp) 利用JSONP解决AJAX跨域问题的原理与jQuery解决方案JSONP jQue...

  • javasscript - 收藏集 - 掘金

    jsonp 跨域请求详解——从繁至简 - 前端 - 掘金什么是jsonp?为什么要用jsonp?JSONP(JSO...

  • Ajax下

    一、cors跨域请求 二、jsonp百度搜索的例子 jsonp.html jsonp.js

  • 做demo和学习过程当中遇到的一些问题,收集的博文

    轻松搞定JSONP跨域请求--->关键字: 跨域, 同源策略, JSONP原理 git拉取远程分支到本地 git ...

  • JSONP的劫持

    关于 JSONP JSONP 全称是 JSON with Padding ,是基于 JSON 格式的为解决跨域请求...

  • jsonp解决ajax跨域的原理

    1.jsonp只能解决GET类型的ajax请求跨域问题2.jsonp请求不是ajax请求,而是一般的get请求3....

  • 关于jsonp劫持

    关于jsonp JSONP 全称是 JSON with Padding ,是基于 JSON 格式的为解决跨域请求资...

  • 跨域

    ??JSONP只能解决GET请求跨域,不能解决POST请求跨域问题,XHR2可以解决GET,POST方式的请求跨域...

网友评论

      本文标题:跨站请求JSONP

      本文链接:https://www.haomeiwen.com/subject/tcsgxftx.html