原文:Navigator.sendBeacon() 關閉網頁時異步發送數據

用戶卸載網頁的時候,有時需要向服務器發一些數據。很自然的做法是在unload事件或beforeunload事件的監聽函數里面,使用XMLHttpRequest對象發送數據。但是,這樣做不是很可靠,因為XMLHttpRequest對象是異步發送,很可能在它即將發送的時候,頁面已經卸載了,從而導致發送取消或者發送失敗。 解決方法就是 AJAX 通信改成同步發送,即只有發送完成,頁面才能卸載。但是,很多 ...

2019-10-18 16:36 0 1688 推薦指數:

查看詳情

Navigator.sendBeacon 無阻塞發送統計數據

業務場景當用戶關閉瀏覽器、刷新瀏覽器或者跳轉其他頁面,向服務器發送一些統計數據。 常規方案1. 直接發送 xhr 請求我們會優先想到監聽頁面的unload或者beforeunload事件,在事件回調里使用XMLHttpRequest發送異步請求。 但是由於是xhr請求是異步發送,很可能 ...

Wed Mar 04 00:39:00 CST 2020 0 1100
關於js渲染網頁時爬取數據的思路和全過程(附源碼)

於js渲染網頁時爬取數據的思路 首先可以先去用requests庫訪問url來測試一下能不能拿到數據,如果能拿到那么就是一個普通的網頁,如果出現403類的錯誤代碼可以在requests.get()方法里加上headers. 如果還是沒有一個你想要的結果,打印出來 的只是一個框架 ...

Sun Aug 26 05:12:00 CST 2018 0 7224
爬取動態網頁時遇到的問題

來爬取網頁內容,用這個地址的話無法爬取更多內容。后來查了一下,這是用了Ajax動態加載技術,專門用來動 ...

Mon Jul 16 19:18:00 CST 2018 0 2482
使用webview加載網頁時session同步

直接調用Android的webview加載URL,由於需要登錄的session導致URL無法顯示,解決方案是在需要訪問的URL中加session: String reporturl = "http://xxx.xxx.xx ...

Thu Apr 30 21:44:00 CST 2015 0 4589
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM