搜索

首页  >  问答  >  正文

javascript - 在网页关闭时,把收集到的访问信息ajax到服务器,实际可行吗??

我想在网页关闭时,把采集到的访问信息ajax到服务器,实际可行吗??
大概代码结构如下:

window.onbeforeunload=function(e){    
    visit_end=new Date();
    visit_long=((visit_end.getTime()-visit_start.getTime())/1000).toFixed(1);
    //此处省略以上采集的访问信息

    ajax_visit_info(); //在关闭网页时,调用ajax函数发送到后台。
    //return confirm('你真的要关闭吗?');     //不想加上这个,看起来不友好。    
}

问题是,用window.onbeforeunload触发ajax,实际应用上 可行吗?
万一用户手机卡了,或者是网络出什么问题,会不会有高概率 错失触发ajax??

PS:我用wamp测试是可以的。

天蓬老师天蓬老师2780 天前762

全部回复(1)我来回复

  • 高洛峰

    高洛峰2017-05-19 10:27:34

    你这种做法肯定会导致数据丢失的,而且一旦丢失就找不回来。

    如果这些数据比较重要的话,建议存一个副本到本地缓存中,每次进来做一次时间戳比对,如果时间戳比上次提交到后台更新,则更新后台数据。

    这样做能避免因网络问题导致的数据丢失。

    回复
    0
  • 取消回复