我有一個 Angular 項目,它與使用 PHP 和 ZF3 制作的后端項目進行通信。我想知道告訴后端項目瀏覽器已關閉的最佳方法是什么?我曾想過在觸發 beforeunload 事件時發送一個 http 請求,但即使我使用 async/await,請求也會被取消。我認為的另一種方式是使用 websocket 連接,但在 PHP 中實現似乎非常復雜,只是為了知道用戶何時離開瀏覽器。有任何想法嗎?謝謝!
1 回答

富國滬深
TA貢獻1790條經驗 獲得超9個贊
最好的方法是使用sendBeacon方法:
簡單的例子:
window.addEventListener('unload', () => {
navigator.sendBeacon('url/to/backend');
});
因為你使用角度,你可以把它放在你的AppComponent(雖然它可能不是正確的地方)
export class AppComponent {
@HostListener('window:unload')
onUnload = () => navigator.sendBeacon('url/to/backend');
}
- 1 回答
- 0 關注
- 100 瀏覽
添加回答
舉報
0/150
提交
取消