(function($) { $.extend({ /** * 通用POST請求方式, * url:請求路徑 * param:請求參數 * success:請求成功回調 * failed:請求失敗回調 */ "postRequest" : function(url, param, success, failed) { var postJqXHR = $.post({ url : url, data : param, contentType : 'application/json' }); postJqXHR.success(function(result) { //返回結果判斷 if (result.status == 200 && $.isFunction(success)) { success(result); } else { toastr.error(result.msg); } }); postJqXHR.fail(function(errorObj) { //請求失敗 if (errorObj != null) toastr.error(errorObj.msg); if ($.isFunction(failed)) { failed(errorObj); } }); }, /** * 通用GET請求方式, * url:請求路徑 * param:請求參數 * success:請求成功回調 * failed:請求失敗回調 */ "getRequest" : function(url, param, success, failed) { var getJqXHR = $.get({ url : url, data : param }); getJqXHR.success(function(result) { //返回結果判斷 if (result.status == 200 && $.isFunction(success)) { success(result); } else { toastr.error(result.msg); } }); getJqXHR.fail(function(errorObj) { //請求失敗 if (errorObj != null) toastr.error(errorObj.msg); if ($.isFunction(failed)) { failed(errorObj); } }); } }); })(jQuery);
$.getRequest("/get/reqUrl", param, function(result) { // 數據返回操做 });
解釋:getRequest接受4個參數,以上代碼第4個參數(失敗的回調函數)沒有給出,由於通用請求JS對「請求失敗」和「後臺返回結果」的信息都作了處理,調用方JS只注重業務返回結果的操做,這也是封裝Ajax請求的優勢(我的體會)。javascript
url:請求地址,java
param:請求參數json
success:請求成功的回調函數app
failed:請求失敗的回調函數函數