微信无法在关闭页面事件中发送网络请求上报数据?

由于需要用户在关闭微信内h5页面的时候记录一些数据,所以现在前端需要在关闭事件中请求后端接口上报数据。

现在使用的是pagehide事件去监听页面关闭,可以正常捕获到关闭事件。但是,在微信内打开的h5页面无法成功的发出网络请求(电脑端可以),后台无法收到请求

伪代码如下:

// ...
window.addEventListener('pagehide', () => {  
  const xhr = new XMLHttpRequest()  
  xhr.onreadystatechange = () => {  
    if (xhr.readyState === 4 && xhr.status === 200) {  
      //  
    }  
  }   
  xhr.open('post', 'https://xxxx/h5/report', false)  
  xhr.send(JSON.stringify({ 
    action: 4,  
    dataID: 1
    // 其它...
  }))  
})
// ...

有没有哪位同学遇到和我同样的需求的,希望能指点一二,感谢!

阅读 3.2k
2 个回答

用iphone11以上的版本应该是可以的。如果可以给我点个赞,如果不可以,就当我没说

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题