我正在尝试在运行于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上运行,但是从uri为
10.2.2.01:8000/myUrlHere
的android仿真器上的端口运行它会失败,因为它不是localhost。关于如何解决这个问题的任何想法? 最佳答案
必须在安全上下文中使用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