在Android模拟器中运行的本地网站上使用Google的PaymentRequest。



我正在尝试在我的Android模拟器中运行的本地网站上测试Google的PaymentRequest API。但是,当我做

var paymentRequest = window.PaymentRequest(//some object here//);

我得到以下错误

"Error: Failed to construct 'PaymentRequest': Must be in a secure context

现在,PaymentRequest确实在Localhost和https上运行,但是从Android模拟器上的端口运行它,因为URI为10.2.2.01:8000/myUrlHere,因为不是Localhost的失败。关于如何解决这个问题有什么想法吗?

必须在安全上下文上使用paymentrequest,这是:

之一
  1. https。
  2. localhost。
  3. 磁盘上的本地文件。

http://10.2.2.01:8000不是安全的上下文,因此您不能在那里使用PaymentRequest。尝试以下一项:

  1. https://10.2.2.01:8000。(SSL证书必须有效。这意味着URL栏中的锁定图标应为绿色。例如,您可以从https://letsencrypt.org/获得。
  2. https://localhost:8000。
  3. file:///sdcard/index.html

如果您拥有Android设备,则有一种方法可以通过USB电缆连接设备并从Localhost进行测试。尝试以下操作:

https://developers.google.com/web/tools/chrome-devtools/remote-debugging/

如果您不这样做,则可能需要使用模拟器尝试此工具:

https://ngrok.com/

ngrok允许您从***的Local -Bonst主机服务。Ngrok.com域。

最新更新