• Jsonp 解决跨域问题


    话不多说直接贴代码:

      $.ajax({
                async: false,
                url: 'http://****.****.com/Handler.ashx?vueId=iwNavpicS2',
                type: "GET",
                dataType: 'jsonp',
                jsonp: 'jsoncallback',
                data: null,
                timeout: 5000,
                beforeSend: function () {
                    //jsonp 方式此方法不被触发.原因可能是dataType如果指定为jsonp的话,就已经不是ajax事件了
                },
                success: function (result) {//客户端jquery预先定义好的callback函数,成功获取跨域服务器上的json数据后,会动态执行这个callback函数
                    var data = 1;
                    if (name == "iwHeader1") {
                        result = JSON.stringify(result[0]);
                        result = result.replace("[[", "[").replace("]]", "]");
                        result = "{"" + name + """ + ":" + result + "}";
                        data = JSON.parse(result);//将字符串转化为json对象
    
                    } else {
                        result = JSON.stringify(result);//将josn 转化为字符串
                        result = result.replace("[[", "[").replace("]]", "]");
                        result = "{"" + name + """ + ":" + result + "}";
                        data = JSON.parse(result);//将字符串转化为json对象
                        //console.log(JSON.parse(result).iwHeader1[0])
                    }
                    $("#val").val(data);
                },
                complete: function (XMLHttpRequest, textStatus) {
                },
                error: function (xhr) {
                    //jsonp 方式此方法不被触发.原因可能是dataType如果指定为jsonp的话,就已经不是ajax事件了
                    //请求出错处理
                    alert("请求出错(请检查相关度网络状况.)");
                }
            });

    注意,jquey是不支持post方式跨域的.

  • 相关阅读:
    node mysql
    css问题
    mac 命令
    js 严格模式
    js 数组
    sass
    js 面向对象 定义对象
    response.getWriter().write("中文");乱码问题
    读取文件并找出年龄最大的N个人-兰亭集市笔试题
    阿里巴巴暑期实习生笔试
  • 原文地址:https://www.cnblogs.com/chongyao/p/6266096.html
Copyright © 2020-2023  润新知