我正在开发一个应用程序,它有一个基于Chromium的应用内浏览器.我需要允许用户通过此浏览器与某个网页/服务器(我没有内部访问权限)进行交互.某些交互(如单击特定按钮)会失败,并显示控制台消息"Uncaught ReferenceError:Notification is not defined".据我所知,这意味着服务器试图使用API向我发送通知,但我的浏览器不支持它.我已经确认!Notification的计算结果为true"Notification" in window的计算结果为false.我还判断了window.chrome.notificationswindow.webkitNotifications和任何其他类型的通知模块,我可以在互联网上找到证据.据我所知,没有加载任何与通知相关的内容.

在Firefox上,有apparently个设置会导致通知永远不会加载.我希望这就是发生在这里的事情,但我找不到任何证据表明Chromium浏览器中有这样的设置,更不用说如何禁用它了.

如何允许Chromium识别通知?

推荐答案

似乎你正在使用的基于Chromium的应用内浏览器可能禁用了通知,或者没有实现通知.如果通知对象不存在,请try 通过定义通知对象的自定义用户脚本或浏览器扩展来启用通知.

即:

if (typeof Notification === 'undefined') {
  window.Notification = class {
    constructor(title, options) {}
    static requestPermission() {
      return Promise.resolve("granted");
    }
  };
}

如果这对你有效,请让我知道.

Javascript相关问答推荐

Next.js Next/Image图像隐含性有任何类型-如何修复?

对象和数字减法会抵消浏览器js中的数字

确定MutationRecord中removedNodes的索引

我无法在NightWatch.js测试中获取完整的Chrome浏览器控制台日志(log)

引用在HTMLAttributes<;HTMLDivElement>;中不可用

为什么useState触发具有相同值的呈现

Angular 中的类型错误上不存在获取属性

如何将未排序的元素追加到数组的末尾?

类构造函数忽略Reaction Native中的可选字段,但在浏览器中按预期工作

如何在箭头函数中引入or子句?

将对象推送到数组会导致复制

触发异步函数后不能显示数据

MongoDB中的嵌套搜索

如何让SVG图标在被点击和访问后改变 colored颜色 ,并在被访问后取消点击时恢复到原来的 colored颜色 ?

FindByIdAndUpdate在嵌套对象中创建_id

按特定顺序将4个数组组合在一起,按ID分组

为什么我的SoupRequest";被重置为初始值,以及如何修复它?

在Java脚本中构建接口的对象

更新文本区域行号

JavaScript -如何跳过某个字符(S)来打乱字符串中的字符