关闭浏览器发送请求
import { getUserToken, getToken } from "@/utils/auth"
export default {
data() {
return {
beforeUnloadTime: "",
gapTime: "",
}
},
mounted() {
window.addEventListener("beforeunload", (e) => {
this.beforeunloadHandler(e)
e.preventDefault();
e.returnValue = '';
});
window.addEventListener("unload", e => this.unloadHandler(e));;
},
destroyed() {
window.removeEventListener("beforeunload", e => this.beforeunloadHandler());
window.removeEventListener("unload", e => this.unloadHandler());
},
methods: {
beforeunloadHandler() {
this.beforeUnloadTime = new Date().getTime()
console.log('this.beforeUnloadTime ==>', this.beforeUnloadTime);
},
async unloadHandler() {
if (JSON.parse(getUserToken())) {
this.gapTime = new Date().getTime() - this.beforeUnloadTime;
console.log(' this.gapTime==>', this.gapTime);
if (this.gapTime <= 5) {
const userId = new FormData()
userId.append("userId", JSON.parse(getUserToken()).id)
fetch("/api/usermodule/user/exitAccount", {
method: "POST",
body: userId,
headers: { token: getToken() },
keepalive: true
}).then(res => res.json()).then(data => { })
}
}
},
},
}
本文来自博客园,作者:云霄紫潭,转载请注明原文链接:https://www.cnblogs.com/0520euv/p/16373744.html