小编Kyl*_*aid的帖子

Firefox - ReferenceError: PaymentRequest 未定义

我正在尝试在网站上实施 google pay。google pay 的外部库是从 pay.google.com 加载的。在这个 google 脚本中,他们调用浏览器 api PaymentRequest()。这个 api 内置于流行的浏览器中,如 Safari、Chrome 等。

我有 google pay 工作,但它在 Firefox 上不起作用。加载外部脚本时,它调用 PaymentRequest 并在控制台中显示以下错误:ReferenceError: PaymentRequest is not defined

链接到谷歌支付脚本 https://pay.google.com/gp/p/js/pay.js

Mozilla Firefox 官方网页声明在安全上下文中支持 PaymentRequest。 https://developer.mozilla.org/en-US/docs/Web/API/Payment_Request_API/Using_the_Payment_Request_API

我只复制和粘贴官方来源提供的相同代码 在此处输入图片说明

在我看来,PaymentRequest 在 Firefox 中不受支持并且不起作用。我错过了什么?

查看 chrome 和 safari 的控制台。 在此处输入图片说明

firefox payment-request-api google-pay

5
推荐指数
1
解决办法
2244
查看次数

Chrome 未来更新限制“专用网络请求”。它会影响扫描本地连接设备上的硬件吗?

我编写了一个 Angular 应用程序,其目的是一个移动仓库管理系统。该应用程序主要用于带有集成条形码扫描仪的移动计算机。它们是霍尼韦尔 TC60。该设备安装了 Android 8 操作系统和 Chrome。霍尼韦尔设备附带可以用 JavaScript 实现的条形码 API。它在端口 8080 上进行回调。

前几天,我注意到 Web 控制台中出现了来自 Chrome 的错误:[弃用] 该网站从网络请求了一个子资源,由于其用户的特权网络位置,该网站只能访问该子资源。这些请求将非公共设备和服务器暴露在互联网上,增加了跨站点请求伪造 (CSRF) 攻击和/或信息泄露的风险。为了减轻这些风险,Chrome 不赞成从非安全上下文发起对非公共子资源的请求,并将在 Chrome 92(2021 年 7 月)中开始阻止这些请求。有关更多详细信息,请参阅https://chromestatus.com/feature/5436853517811712 。

如果我理解正确的话,到 7 月份,集成条形码扫描仪 API 将变得毫无用处,公司将有数千美元的设备将不再与集成扫描仪 API 一起使用。请求是从使用公共安全域的设备向私有 IP 发出的,但它是本地主机。您不会认为 localhost 可能存在漏洞。因为实际上没有拨打外部电话。

我不确定这个有针对性的“功能”是否会破坏我的扫描仪。我应该假设它会吗?设备上没有选项要求安全的本地连接,如果这有意义的话。

android google-chrome honeywell

3
推荐指数
1
解决办法
8931
查看次数

为什么 !运算符为不同的表达式返回真?

考虑以下javascript

var test = ['1', '2', '3'];
Run Code Online (Sandbox Code Playgroud)

在控制台中,键入

test.indexOf('1') > -1;
Run Code Online (Sandbox Code Playgroud)

结果会是真的。

现在添加基本的 Not 运算符!。

!test.indexOf('1') > -1;
Run Code Online (Sandbox Code Playgroud)

结果也是真的,但我预计结果是假的。为什么是真的?

在此处输入图片说明

javascript

2
推荐指数
1
解决办法
55
查看次数