zoukankan      html  css  js  c++  java
  • js

    1.js中判断字符串是否为json

    function isJSONOrObject(str) {
        if (typeof str == 'string') {
            try {
                var obj = JSON.parse(str);
                if (typeof obj == 'object' && obj) {
                    return true;
                } else {
                    return false;
                }
            } catch (e) {
                return false;
            }
        }
        return true;
    }

    2.Jquery的$.ajax方法

    (function($){  
        //备份jquery的ajax方法  
        var _ajax=$.ajax;  
          
        //重写jquery的ajax方法  
        $.ajax=function(opt){  
            //备份opt中error和success方法  
            var fn = {  
                error:function(XMLHttpRequest, textStatus, errorThrown){},  
                success:function(data, textStatus){}  
            }  
            if(opt.error){  
                fn.error=opt.error;  
            }  
            if(opt.success){  
                fn.success=opt.success;  
            }  
              
            //扩展增强处理  
            var _opt = $.extend(opt,{  
                error:function(XMLHttpRequest, textStatus, errorThrown){  
                    //错误方法增强处理  
                      
                    fn.error(XMLHttpRequest, textStatus, errorThrown);  
                },  
                success:function(data, textStatus){  
                    //成功回调方法增强处理  
                      
                    fn.success(data, textStatus);  
                }  
            });  
            _ajax(_opt);  
        };  
    })(jQuery);  
    var token = window.localStorage.getItem('tokenInfo');
    var _ajax = $.ajax;
    $.ajax = function(opt) {
        var fn = {
            error : function(XMLHttpRequest, textStatus, errorThrown) {
            },
            success : function(data, textStatus) {
            }
        };
        if (opt.error) {
            fn.error = opt.error;
        }
        if (opt.success) {
            fn.success = opt.success;
        }
    
        var _opt = $.extend(opt, {
            error : function(XMLHttpRequest, textStatus, errorThrown) {
                //if(XMLHttpRequest.status!==200){
                //    alert('数据接口报错,状态码:'+XMLHttpRequest.status+'')
                //}
                fn.error(XMLHttpRequest, textStatus, errorThrown);
            },
            success : function(data, textStatus, XMLHttpRequest) {
                if (isJSONOrObject(data)) {
                    var res = JSON.parse(XMLHttpRequest.responseText);
                    if (res.status == '40301' || res.status == '40101') {
                        if (window !== top) {
                            top.location.href = "login.html"
                        } else {
                            window.location.href = "login.html"
                        }
                    }
                }
                fn.success(data, textStatus, XMLHttpRequest);
            },
            headers : {
                Authorization : token,
            // sid: sid
            }
        });
        return _ajax(_opt);
    };
  • 相关阅读:
    开启和禁用Wifi热点命令
    C# IE代理操作
    Asp.net QueryString批量插入和更新
    Asp.net 插入或更改查询字符串
    C#如何判断线程池中所有的线程是否已经完成之Demo
    mysql 安装及设置密码
    c# iis回收应用程序池
    判断是否为移动端
    rtmp,m3u8 直播地址
    byte数组转换为字符串
  • 原文地址:https://www.cnblogs.com/namehou/p/10888409.html
Copyright © 2011-2022 走看看