国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

關閉頁面時window.location事件未執行的原因分析及解決方案

2024-05-06 16:08:08
字體:
來源:轉載
供稿:網友
最近在做一個項目的時候,遇到個問題,就是關閉頁面時window.location事件未執行,百思不得其解,度娘上搜了一下才知道具體原因,記錄一下
 
 

1、問題描述:

  JS中定義widow.location = function(),頁面關閉時,logout()函數未執行。 

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()中調用SOAPClient.invoke()方法,參數為true,代表前端和server是異步方式通信,即前端還未接收到server端的響應,便已經執行后面的語句了,在該問題中表現為前端執行logout()時還未等到server的響應,便已經將頁面關閉了,所以表現為logout()未執行。

3、解決方法:

  將前端和server通信方式改為同步,即將SOAPClient.invoke()方法中true改為false,問題得到解決。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 普兰县| 石河子市| 曲阳县| 威远县| 株洲市| 木兰县| 疏勒县| 莱芜市| 花莲市| 宁远县| 陕西省| 大田县| 郧西县| 开阳县| 庆阳市| 游戏| 临沭县| 南投市| 新河县| 大安市| 泰安市| 东至县| 怀宁县| 蓝山县| 兴隆县| 长武县| 济源市| 农安县| 珠海市| 乐都县| 财经| 会宁县| 河北区| 云龙县| 嵩明县| 甘南县| 比如县| 连山| 临西县| 金阳县| 金门县|