zoukankan      html  css  js  c++  java
  • 使用jsonp跨域请求后可以获得数据,但是进入error方法,返回parseerror

    $.ajax({
    url:url,
    dataType:'jsonp',
    jsonp: 'callback',//回调函数名字
    jsonpCallback: 'success_jsonpCallback',//可以不写,也可以自定义,用来取代 jQuery 自动生成的随机函数名,不写将由jq自动生成,每次生成的结果都不一样
    // processData: true,
    type:'get',
    success:function(json){
    console.log(json);
    },
    error:function(XMLHttpRequest, textStatus, errorThrown) {
    alert(XMLHttpRequest.status);
    alert(XMLHttpRequest.readyState);
    alert(textStatus);
    }});

    解决:设置jsonp参数回调函数名字与服务器一致

    w3标准参数介绍

    jsonp

    类型:String

    在一个 jsonp 请求中重写回调函数的名字。这个值用来替代在 "callback=?" 这种 GET 或 POST 请求中 URL 参数里的 "callback" 部分,比如 {jsonp:'onJsonPLoad'} 会导致将 "onJsonPLoad=?" 传给服务器。

    jsonpCallback

    类型:String

    为 jsonp 请求指定一个回调函数名。这个值将用来取代 jQuery 自动生成的随机函数名。这主要用来让 jQuery 生成度独特的函数名,这样管理请求更容易,也能方便地提供回调函数和错误处理。你也可以在想让浏览器缓存 GET 请求的时候,指定这个回调函数名。

  • 相关阅读:
    Java异常
    docker安装和介绍(基于centos 7)
    centos7搭建gitlab版本控制系统
    webstorm快捷键使用
    Extjs-note
    mak iso
    windows上的硬盘挂载到linux上的步骤方法
    【JAVA笔记——术】JSP中乱码问题的解决方法
    PHP获得IP方式
    ubuntu安装hadoop 若干问题的解决
  • 原文地址:https://www.cnblogs.com/nullman/p/5942775.html
Copyright © 2011-2022 走看看