我正在尝试在我的 android 模拟器中运行的本地网站上测试 Google 的 PaymentRequest api。然而,当我这样做的时候
var paymentRequest = window.PaymentRequest(//some object here//);
出现以下错误
"Error: Failed to construct 'PaymentRequest': Must be in a secure context
现在,PaymentRequest 确实在本地主机和 https 上运行,但是从 android 模拟器上的端口运行它,其中 uri 是 10.2.2.01:8000/myUrlHere
将失败,因为它不是本地主机。关于如何解决这个问题的任何想法?
最佳答案
PaymentRequest 必须在安全上下文中使用,它是以下之一:
- HTTPS。
- 本地主机。
- 磁盘上的本地文件。
http://10.2.2.01:8000 不是安全上下文,因此您不能在那里使用 PaymentRequest。尝试以下操作之一:
- https://10.2.2.01:8000。 (SSL 证书必须有效。这意味着 URL 栏中的锁图标应该是绿色的。例如,您可以从 https://letsencrypt.org/ 获取一个。)
- https://localhost:8000.
- 文件:///sdcard/index.html
关于javascript - 在 Android 模拟器中运行的本地站点上使用谷歌的 PaymentRequest,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44372632/