zoukankan      html  css  js  c++  java
  • jsonp

     jQuery(document).ready(function(){
            $.ajax({
                 type: "get",
                 async: false,
                 url: "url",
                 dataType: "jsonp",
                 jsonp: "callback",//传递给请求处理程序或页面的,用以获得jsonp回调函数名的参数名(一般默认为:callback)
                 jsonpCallback:"flightHandler",//自定义的jsonp回调函数名称,默认为jQuery自动生成的随机函数名,也可以写"?",jQuery会自动为你处理数据
                 success: function(json){
                     console.log("123");
                 },
                 error: function(){
                     console.log("456");
                 }
             });
         });
            
            

    jsonp Uncaught SyntaxError: Unexpected token : 报错

    -----------------------------------------------------------------------------------------------

    翻看了一下Jquery文档发现jsonp:”callback”, jsonpCallback:”success_jsonpCallback”,传递这两个参数是有原因的,jsonp的返回数据格式应该是: “客户端传递的回调方法名称(json数据)”,将php文件改为:

    <?php 
    $arr = array ('username'=>'jack','age'=>21,'gender'=>'male'); 
    echo $_GET['callback']."(".json_encode($arr).")";
    ?>

    测试,正确返回结果,如下图:

    可以看到,php文件返回的结果是 success_jsonpCallback({“username”:”jack”,”age”:21,”gender”:”male”}) ,这才是正确的jsonp返回格式,而success_jsonpCallback这是传递过去的参数。

    http://www.cnphp6.com/archives/65409

  • 相关阅读:
    总结Selenium自动化测试方法(二)测试环境搭建
    画画学习
    喜欢看的电影
    angular学习知识点
    前端编辑器
    托尔斯泰经典语录:没有风暴,船帆不过是一块破布
    当下最流行的10大H5前端框架
    移动端问题总纲
    第二阶段团队冲刺04
    第二阶段团队冲刺03
  • 原文地址:https://www.cnblogs.com/hellowzd/p/5354818.html
Copyright © 2011-2022 走看看