關(guān)閉頁面時window.location事件未執(zhí)行的原因分析及解決方案
1、問題描述:
JS中定義widow.location = function(),頁面關(guān)閉時,logout()函數(shù)未執(zhí)行?!?/p>
window.onunload = function() {
logout();
}
function logout(reqParam, callback){
var userManageServiceUrl = "http://" + getServerAddr() + "/axis2/services/UserManageService";
var urlList = [];
var url = window.location.href;
urlList = url.split("?");
var sessionID = urlList[1];
reqParam.sessionID = sessionID;
var pl = new SOAPClientParameters();
var reqParamStr = JSON.stringify(reqParam);
pl.add("reqParam", reqParamStr);
SOAPClient.invoke(userManageServiceUrl, "logout", pl, false, callback);
}
2、問題原因:
logout()中調(diào)用SOAPClient.invoke()方法,參數(shù)為true,代表前端和server是異步方式通信,即前端還未接收到server端的響應(yīng),便已經(jīng)執(zhí)行后面的語句了,在該問題中表現(xiàn)為前端執(zhí)行l(wèi)ogout()時還未等到server的響應(yīng),便已經(jīng)將頁面關(guān)閉了,所以表現(xiàn)為logout()未執(zhí)行。
3、解決方法:
將前端和server通信方式改為同步,即將SOAPClient.invoke()方法中true改為false,問題得到解決。
- window.location和document.location的區(qū)別分析
- javascript 打開頁面window.location和window.open的區(qū)別
- window.location.hash 屬性使用說明
- 關(guān)于js中window.location.href,location.href,parent.location.href,top.location.href的用法與區(qū)別
- window.location.hash 使用說明
- window.location.reload()方法刷新頁面彈出要再次顯示該網(wǎng)頁對話框
- window.navigate 與 window.location.href 的使用區(qū)別介紹
- window.location不跳轉(zhuǎn)的問題解決方法
相關(guān)文章
JSON.parse()和JSON.stringify()使用介紹
這篇文章主要介紹了JSON.parse()和JSON.stringify()使用,需要的朋友可以參考下2014-06-06
JS+canvas五子棋人機(jī)對戰(zhàn)實現(xiàn)步驟詳解
這篇文章主要介紹了JS+canvas五子棋人機(jī)對戰(zhàn)實現(xiàn)步驟詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-06-06
async/await讓異步操作同步執(zhí)行的方法詳解
這篇文章主要給大家介紹了關(guān)于async/await讓異步操作同步執(zhí)行的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者使用async/await具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11
Array.prototype.concat不是通用方法反駁[譯]
ECMAScript 5.1規(guī)范中指出,數(shù)組方法concat是通用的(generic).本文反駁了這一結(jié)論,因為實際上并不是這樣的2012-09-09
JS中confirm,alert,prompt函數(shù)使用區(qū)別分析
JS中confirm,alert,prompt函數(shù)使用區(qū)別分析,需要的朋友可以參考下。2010-04-04
微信小程序使用input組件實現(xiàn)密碼框功能【附源碼下載】
這篇文章主要介紹了微信小程序使用input組件實現(xiàn)密碼框功能,涉及input組件布局設(shè)置相關(guān)操作技巧,并附帶源碼供讀者下載參考,需要的朋友可以參考下2017-12-12

