gpt4 book ai didi

google-chrome - Chrome 扩展程序可监控信息亭并在需要时重新加载

转载 作者:行者123 更新时间:2023-12-04 19:14:21 24 4
gpt4 key购买 nike

我有一个处理人物肖像的信息亭。它在 chrome 中运行。

使用自助服务终端的 200 人中就有 1 人在此过程中卡住。当它卡住时,我永远不会听到“啊啪”的声音,页面就挂了。

我想知道是否可以进行扩展以监视页面并检查心跳 - 如果 30 秒后没有看到它重新加载窗口。

任何帮助都会很棒。

最佳答案

  • 让信息亭页面中的内容脚本每 X 秒向后台页面发送一条消息

    在内容脚本中:
    var port = chrome.extension.connect({ name: "keep-alive" });

    port.postMessage('is-alive', { alive: true });

    setInterval(function () {
    port.postMessage('is-alive', { alive: true });
    }, 1000 * 15);
  • 如果后台页面检测到消息在一段时间后没有回来,则重新加载选项卡

    在后台页面:
    var last = Date.now();
    var interval = 1000 * 15;

    chrome.extension.onConnect.addListener(function (port) {
    if (port.name === 'keep-alive') {
    port.onMessage.addListener(function (data) {
    if (data.type === 'is-alive' && data.payload.alive === true) {
    last = Date.now();
    }
    });
    }
    });

    setInterval(function () {
    if (Date.now() - last > interval) {
    // Reload the tab...
    }
    }, interval);

  • 有关重新加载选项卡的信息,请参阅 chrome.tabs 文档。您需要添加 tabs到 list 中的权限列表。

    如果您想了解有关消息传递的更多信息,请参阅 Messaging文档。

    关于google-chrome - Chrome 扩展程序可监控信息亭并在需要时重新加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11598988/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com