从Go应用程序中刷新特定浏览器选项卡的最简单方法是什么?
What's the simplest way to refresh a particular browser tab from a Go application?
我的机器上运行了一个客户端Golang应用程序。我也有一个浏览器打开,在那个浏览器中可能有一个标签运行我的web应用程序(这是完全独立于Golang应用程序)。
从Golang应用程序,我想以编程方式刷新浏览器选项卡(也许如果可能的话,把它放在前面,但这是不太重要的)。
我已经研究了很多,我得出的结论是,这是不可能仅仅通过与浏览器通信,没有标准的(特别是跨平台和跨浏览器)接口,我们可以触发浏览器的特定选项卡的刷新。
所以我想我需要在网站上运行一些自定义JS代码,我的Golang应用程序可以与之通信并触发选项卡的刷新。
最简单的方法是什么?
(我正在看liverload .js和lrserver,但这些都以有一个我们想要观看的内容文件夹为前提,并在任何更改时自动重新加载。)但我不想这样,我只是想通过编程触发刷新。此外,这个Golang应用程序不托管网站,它只是一个单独的客户端应用程序。
正如一些评论所建议的那样,似乎没有API可以通过它从Golang连接到浏览器,查询选项卡列表和刷新特定页面(至少不是跨浏览器和跨平台的方式)。
一种可能的方法是在Golang中托管一个小的WebSocket端点,并从我们想要刷新的站点连接到它。然后,每次我们想要重新加载站点时,通过WS连接发送一条消息,在JavaScript中,当我们收到消息时调用location.reload()
。
我在一篇博客文章中描述了所有的细节,并上传了一个完整的工作示例到GitHub。
相关文章:
- JQuery:向多个匹配结果添加换行符的最简单方法
- 访问对象的最简单方法'的单独财产
- 什么'这是使用jQuery将一些文本锚定到外部链接的最简单方法
- 实施会员系统的最简单方法是什么
- 出错时更改文本字段边框的最简单方法
- JavaScript:获取第一个月前 6 个月的日期的最简单方法
- 在CreateJS中加载视频的最简单方法
- 使用JavaScript过滤从网页复制的文本的最简单方法
- 创建在Javascript和PHP之间使用的唯一代码的最简单方法
- 使用JS找出字符串中字符重复的最简单方法是什么
- 使选择框在URL中使用变量重新加载页面的最简单方法
- 在原始对象的基础上创建新对象的最简单方法,但没有几个字段
- 在HTML中记住用户区域设置选择的最简单方法
- 在Raphael JS中创建脉动(循环)背景的最简单方法
- 从jquery下载具有现有路径的文件的最简单方法
- 在 Javascript 中将对象连接为空格分隔字符串的最简单方法是什么?
- 什么'这是重定向不受支持的浏览器的最简单方法
- 管理形式状态的最简单方法是什么
- 创建响应图像的最简单方法是什么
- 在 JavaScript 中,将文本插入字符串的最简单方法是什么?