js的ajax扩展插件开发与编写

js的ajax扩展插件开发与编写

ajaxSetup() 方法为将来的 AJAX 请求设置默认值。

(function (window, $) {
 /**统一处置ajax 的一些事件 和参数*/
    function _ajaxSetup() {

        $(document).ajaxStart(function () {
            window.ajaxruning = true;
            $Core.IsAjaxTimeOut = false;
            $Core.Loading.AjaxLoadingStart();
            //console.log("documentStart");
        }).ajaxStop(function () {
            window.ajaxruning = false;
            $Core.Loading.HideAjaxLoading();
            //console.log("documentStop");

        }).ajaxError(function (event, XMLHttpRequest, ajaxOptions, thrownError) {
            $Core.Loading.HideAll();
            if (thrownError === "timeout") {
                $Core.IsAjaxTimeOut = true;
                showError(ajaxOptions, "timeout", "请求超时,请检查您的网络连接!");
                return;
            }
            showError(ajaxOptions, XMLHttpRequest.status, XMLHttpRequest.responseText);
        });

        //这里设置统一的头信息
        $.ajaxSetup({
            beforeSend: function (xhr) {
                //alert(this.url);
                if (this.url) {
                    if (!this.url.contains("http"))
                        this.url = $Core.SERVICEPATH() + this.url;
                }
            },
            //dataType: "josn",
            headers: {
                'token': $Core.USER().TOKEN,
                'appid': $Core.APPID
            },
            contentType: 'application/x-www-form-urlencoded; charset=UTF-8',
            timeout: $Core.Config.ajaxTimeout,
            cache: false,
            //xhrFields: {
            //    withCredentials: true
            //},
            //dataType:"json",
            crossDomain: true,
            complete: function (XHR, TS) {
                if (TS === "success") {
                    var result = XHR.responseJSON;
                    if (result && result.code) {
                        if (result.code == "500") {
                            showError(this, 500, result.msg);
                            return false;
                        }
                        else if (result.code == "401") { //登录信息失败
                            showError(this, 401, "您的登录信息已经失效,请重新登录系统!", $Core.TimeOut);
                            return false;
                        }
                        else if (result.code == "403") { //资源信息失败
                            return false;
                        }
                    }
                }
                //console.log(XHR, TS);
            }

        });
    }


    /*************************************ajaxEnd***************************************/
    _ajaxSetup();

})(window, jQuery);
function showError(ajaxOpts, errorCode, errorMsg, callback) {
    var topwin = window;
    if (topwin.iserrorshow) return;
    topwin.iserrorshow = true;
    var msg = "{1} <hr />错误号:{0} <br /> 请求地址:{2}".format(errorCode,
        $.string.isNullOrWhiteSpace(errorMsg) ? "系统出现了一个未指明的错误,如果该问题重复出现,请联系您的系统管理员并反馈该故障。"
            : errorMsg,
        ajaxOpts.url
    );
 if (topwin.layer) {
        topwin.layer.open({
            title: '错误提醒',
            type: 0,
            fixed: false, //不固定
            maxmin: false,
            content: msg,
            end: function (index, layero) {
                winClose();
            }

        });
    }
    else {
        alert(msg);
        winClose();
    }

    var winClose = function () {
        topwin.iserrorshow = false;
        if (callback !== undefined)
            callback();
    };

}

//禁止表单回车自动提交
$(function () {
    $("form input").keydown(function () {
        if (event.keyCode == 13) { return false };
    });
});



<script>
   
    $.ajaxSetup({
       
        //dataType: "josn",
        headers: {
            'appid': $Core.APPID
        },
        contentType: 'application/x-www-form-urlencoded; charset=UTF-8',
        timeout: 10000,
        cache: false,
        //xhrFields: {
        //    withCredentials: true
        //},
        crossDomain: true

    });
    $(document).ajaxError(function (event, XMLHttpRequest, ajaxOptions, thrownError) {
        $Core.Loading.HideAll();
        if (thrownError === "timeout") {
            alert("网络连接超时,请稍后重试!")
            return;
        }
        alert("网络连接异常,请稍后重试!" + XMLHttpRequest.responseText);
    });

    $(function () {
        //var user = $Core.USER();
        //if (user != null) {
        //    location.href = "main.html";
        //    return;
        //}
        $("#pageloading").fadeOut();
        // $Core.Loading.HideAll();
        //login
        $("#btnLogin").click(function () {
       debugger;
            var ucode = $("#userCode").val();
            var pass = $("#passWord").val();
            $.post($Core.SERVICEROOT()+"login", { usercode: ucode, userpass: pass },
                function (result) {
                    console.log(result);
                    if (result.code === 0) {
                        var udata = result.data;
                        var userinfo = {};
                        userinfo.USERID = udata.userId;
                        userinfo.USERNAME = udata.userName;
                        userinfo.DEPID = udata.orgId;
                        userinfo.DEPNAME = udata.orgName;
                        userinfo.OrgManageDataCode = udata.orgManageDataCode;
                        userinfo.TOKEN = udata.token;
                        userinfo.orgLevel = udata.orgLevel;
                        //userinfo.RESOURCELIST = udata.resourceList;
                        userinfo.OrgDataCode = udata.orgDataCode;
                        $Core.Login(userinfo);
                        location.href = "main.html";
                    } else {
                        alert(result.msg);
                    }
                });
            
           
        });
    });
</script>
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
	@RequestMapping(value="/login")
	public AssembleJSON login(HttpServletRequest request, HttpServletResponse response){
		String usercode = request.getParameter("usercode");
		String userpass = request.getParameter("userpass");
		String appid = request.getHeader("appid");
}

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wespten

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值