首页
学习
活动
专区
工具
TVP
发布

关闭 浏览器 触发 监听 器,向后端发送请求

关闭 浏览器 触发 监听 器,向后端发送请求 1、需求前提 项目使用Vue + SpringBoot搭建的前后端分离项目,后端存储用户登录信息和Token。 现在的需求是,多端只可以有一个用户登录,当一个用户 关闭 浏览器 或者 关闭 标签页时,向后端发送请求删除该用户的登录信息,以此来解决用户及时下线的目的。 return ' 关闭 提示'; // 关闭 浏览器 标签触发 logout() { fetch('/login/loginOut? 点击取消按钮时不会触发第二个 监听 器,点击离开按钮时,则会触发下面的 监听 器。 // 关闭 浏览器 标签触发 logout() { fetch('/login/loginOut? 到这里前端基本就写完了,只要 关闭 浏览器 或者 关闭 标签页,则会触发这个 监听 器并发送请求到后端,只要后端收到了这个请求,则证明fetch请求是没有问题。

434 1 0
  • 广告
    关闭

    上云精选

    2核2G云服务器 每月9.33元起,还有更多云产品低至0.02元

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    javascript 如何 监听 页面刷新和页面 关闭 事件

    在我们的日常生活中,时常遇到这么一种情况,当我们在点击一个链接、 关闭 页面、表单提交时等情况,会提示我们是否确认该操作等信息。 两者都是在对页面的 关闭 或刷新事件作个操作。 unbeforeunload()事件执行的顺序在onunload()事件之前发生。 onunload()事件是无法阻止页面 关闭 的。 浏览器 的兼容 onunload: IE6,IE7,IE8 中 刷新页面、 关闭 浏览器 之后、页面跳转之后都会执行; IE9 刷新页面 会执行,页面跳转、 关闭 浏览器 不能执行; firefox(包括firefox3.6 ) 关闭 标签之后、页面跳转之后、刷新页面之后能执行,但 关闭 浏览器 不能执行; Safari 刷新页面、页面跳转之后会执行,但 关闭 浏览器 不能执行; Opera、Chrome 任何情况都不执行。

    7.6K 3 0

    js 监听 手机端点击物理返回键或 js 监听 pc端点击 浏览器 返回键

    ,但是这个物理返回键的 监听 好像没有直接的办法进行,所以有人就想到了曲线的办法 页面加载完成时,调用history.pushState写入一个指定状态STATE,并 监听 window.onpopstate 当onpopstate被触发时,检查event.state是否等于STATE,如果相等,表示页面发生了后退(按下返回键或者 浏览器 的后退按钮),则把这次行为当作是返回键被按下了(把点击 浏览器 的后退按钮也误算进来了 ,你还需要 监听 这个物理返回键,这时候你就需要再上次那个操作完之后再使用histroy.pushState再写入一次之前写入的那个状态,这样下次会继续 监听 那个物理返回键,否则下次你再点击那个返回键的话,就会直接返回 浏览器 的栈的上一级 举个例子: 我在vue的项目中引入xback. js <remote-script src="/<em>js</em>/xback.<em>js</em>" @load="load_xback"></remote-script>  关于上面在 vue中引入外部 js ,请参考 http://www.cnblogs.com/zhuchenglin/p/7455203.html 然后在vue中定义一个load_xback 方法 load_xback

    4.3K 1 0

    js 兼容多 浏览器 关闭 当前页面

    关闭 当前页面,相信不少人在开发中都遇到过这个需求,但面对这么多的 浏览器 ,要做到 js 的兼容还需要做特殊的处理。关于这方面网上有很多的资料,但大多都是复制粘贴的,没有达到兼容的效果,或者是效果不好。 //FF中需要修改配置window.close方法才能有作用,为了不需要用户去手动修改,所以用一个空白页面显示并且让后退按钮失效 //Opera 浏览器 旧版本(小于等于12.16版本)内核是Presto, window.close方法有作用,但页面不是 关闭 只是跳转到空白页面,后退按钮有效,也需要特殊处理 var userAgent = navigator.userAgent; if (userAgent.indexOf

    2.8K 2 0

    如何 关闭 常见 浏览器 的 HSTS 功能

    它告诉 浏览器 只能通过HTTPS访问,而绝对禁止HTTP方式。 而且由于 HSTS 并不是像 cookie 一样存放在 浏览器 缓存里,简单的清空 浏览器 缓存操作并没有什么效果,页面依然通过 HTTPS 的方式传输。 那么怎样才能 关闭 浏览器 的 HSTS 呢,各种谷歌~~度娘~~之后,在这里汇总一下几大常见 浏览器 HSTS 的 关闭 方法。 Safari 浏览器 完全 关闭 Safari 删除 ~/Library/Cookies/HSTS.plist 这个文件 重新打开 Safari 即可 极少数情况下,需要重启系统 Chrome 浏览器 地址栏中输入 和 Chrome 方法一样 Firefox 浏览器 关闭 所有已打开的页面 清空历史记录和缓存 地址栏输入about:permissions 搜索项目域名,并点击 Forget About This Site

    1.2K 3 0

    如何 使用 ethers. js 监听 待处理交易

    在这份指南中,我们将学会 如何 在以太坊和相似链使用 ethers. js [4] 处理待处理交易流 在你的电脑上安装 Nodejs 一个文本编辑器 命令行终端 一个以太坊节点 什么是待处理交易 要在以太坊网络编写或者更新任何内容 我们将使用 ethers. js [6], - (中文文档[7]) 通过 WebSockets 处理这些待处理的交易流。在编写代码之前, 看看 如何 安装 ethers. js 。 安装 ethers. js 我们的第一步是检查系统上是否安装了 node. js 。 现在我们已经安装了 node. js ,让我们使用 node. js 附带的 npm(节点包管理器)安装 ethers. js 库。 在这里,我们看到了 如何 使用 ethers.sjs 从以太坊网络获取待处理的交易,这里有相应的文档[11]。 订阅我们的 newsletter[12] 以获取有关以太坊的更多文章和指南。

    879 3 0

    开启1521端口 监听 _服务器1521端口被 关闭 如何 开启?

    ; (8)用命令查看当前端口情况netstat -a –n; (9)C:\Documents and Settings\Administrator>netstat -a -n (10)1521端口处于 监听 状态 为了验证,我又telnet 1035/1026都可以通; (12)但是为什么呢,是不是就因为这个IP的原因呢,怎么才可以把这个“127.0.0.1”改为“0.0.0.0”; (13)1521是Oracle 监听 端口 ,问题估计还是出在 监听 本身; (14)我打开另一台也装有Oracle且1521可以连接的机器,查看NETWORK\ADMIN\listener.ora文件,仔细对比两个Oracle该文件的区别,发现正常的 .2cto.com(ADDRESS = (PROTOCOL = TCP)(HOST = lggsuper_pc)(PORT = 1521))); (16)我备份该文件后,将localhost 也改为本机名,重启 监听

    2.6K 2 0

    如何 浏览器 里用 js 解析excel文件

    上篇文章给大家介绍了 如何 借助nodejs平台解析操作excel,今天给大家介绍 如何 浏览器 端使用 js 解析操作excel。 在文章开始之前我们要搞明白一件事情,那就是在 浏览器 端用 js 操作excel主要来做什么呢? 主要做两件事情读和写,对就是这两件事情,在 浏览器 端针对Excel操作的所有需求无非就是读和写。 那么这里就出现了一个问题,我们 如何 能拿到excle文件的二进制数据呢? 这里又牵扯出了一个问题, 浏览器 如何 读取excel文件的二进制数据,这里需要用到HTML5规范的一个新特性FileReader。 代码演示如下,只有一个input元素,并 监听 这个元素的change事件,尝试传递一个excel文件: 打印结果为: 以上便是 浏览器 借助 js 读取excel文件,代码量不多但稍微有点繁琐,涉及到了FileReader这个html5的新特性。

    4.3K 5 2

    selenium+chrome不 关闭 浏览器 的情况下 如何 换IP?

    Selenium是一种用于自动化 浏览器 的工具,可以用于模拟用户行为,特别是在访问需要进行登录的网站的时候,直接可以使用Selenium和HTTP代理来模拟真实用户行为,绕过网站反爬虫机制,以及保护我们的隐私 那 如何 在Selenium中使用代理并访问目标网站,一般Selenium都是使用ChromeDriver来控制 浏览器 。 webRequestBlocking" ], "background": { "scripts": ["background. js # option.add_argument("--disable-extensions") option.add_extension(proxy_auth_plugin_path) # 关闭 Page.addScriptToEvaluateOnNewDocument", {"source": script}) driver.get("https://httpbin.org/ip")关于Selenium使用代理还遇到这样的问题,Selenium怎样在不 关闭 浏览器 的情况下重新设置代理

    412 4 0

    JS 浏览器 和Node下是 如何 工作的?

    浏览器 中的情况 假设你在 浏览器 中打开一个页面,其使用了一个单独的 JS 执行线程。该线程负责处理所有事,如滚动页面、打印页面上的某些东西、 监听 DOM 事件(比如点击)等等。 要形象化的了解 JS 如何 执行一段程序,需要理解其运行时: 和其他任何编程语言一样, JS 运行时包含一个栈(stack)和一个堆(heap)存储。关于堆的解释不展开了,我们说说 栈 。 浏览器 会在那个请求完成之前假死吗?真那么样的话,用户体验可太糟了。 浏览器 有一个 JS 引擎,用来提供 JS 运行时环境。 除了 JS 引擎之外, 浏览器 中还包含诸如发送 HTTP 请求、 监听 DOM 事件、延迟执行 setTimeout 或 setInterval、缓存、数据存储等各种应用逻辑,正是这些特性帮助了我们创建富 但在 node 中,能在后台做到几乎大部分的事情,尽管那只是个简单的 JS 程序。但是,这是 如何 做到的呢?

    814 1 0

    JS 如何 利用 浏览器 的 cookie 保存用户名

    &dis_t=1670378876&vid=wxv_2654163895754113028&format_id=10002&support_redirect=0&mmversion=false 浏览器 的 cookie可以用来存储一些少量的网站信息,比如登录的用户名,用于提高用户体验非常有帮助 有的一些网站在第一次登录后,在指定的时间范围内容,下次在打开网站,再次登录时,不用每次都重新输入用户名的 如何 利用 浏览器 的 cookie 保存用户名 (https://coder.itclan.cn/fontend/ js /33-cookie-save-user/) 具体示例代码如下所示 <template display: flex; justify-content: center; </style> 以上本示例中的源码,其中核心代码设置cookie如下所示 // 如果是在原生 js key_val[1]; // 这里就是在重新赋值,将cookie获取到的val进行赋值