ios - ionic - iFrame 在直播时未在 ios 上显示
问题描述
所以这个让我完全难住了。
我们有一个基于 Ionic 框架(CLI 版本 4.1.1)的应用程序
该应用程序通过我们使用的公司(Splash Payments)通过托管字段接受用户的信用卡号。这只是意味着他们在屏幕上插入 iFrame 以显示信用卡号、到期日期和 CVV 号字段。
当我们通过服务在我们的计算机上本地测试它时,一切正常。当我们构建应用程序并通过 xCode 对其进行测试时,一切正常,但是当我们实际将其发布到应用程序商店时(我们通过 Code Push 推送代码更新),这些字段就永远不会出现。
起初我们意识到这可能是内容安全策略,所以我们玩了一段时间并想出了这个:
<meta http-equiv="Content-Security-Policy" content="default-src https://s3.amazonaws.com https://api.OURCOMPANY.com https://codepush.azurewebsites.net 'self' data: gap: https://ssl.gstatic.com 'unsafe-eval' 'unsafe-inline'; connect-src https://codepush.azurewebsites.net https://api.splashpayments.com https://api.OURCOMPANY.com 'unsafe-eval' 'unsafe-inline'; script-src https://api.splashpayments.com https://code.jquery.com 'self' 'unsafe-inline' 'unsafe-eval'; style-src https://api.splashpayments.com 'self' 'unsafe-inline'; frame-src https://api.splashpayments.com 'self'; media-src *" />
在那之后不起作用,我们尝试添加
<allow-navigation href="*" />
<access origin="*" />
到 config.xml 文件。
这些都不起作用。我们仍然没有在付款表单上找到任何字段。
知道为什么这些 iFrame 没有显示吗?
解决方案
推荐阅读
- ios - 如何在 Storyboard 中为 6 个按钮创建自定义标签栏?
- javascript - 使用 fetch 的 React 组件不从响应中填充状态
- c# - 计时器不适用于自动 CarouselView
- javascript - 我无法理解的函数语法差异
- python-3.x - 验证 GPU 是否在 Keras/Tensorflow 中实际使用,而不仅仅是验证为存在
- java - 限制可以同时连接到服务器的客户端数量 - Java
- javascript - setInterval 函数并不总是按预期工作
- jquery - 合并数据库后,如何调用某个属性/值对象在我的数据表中使用?
- android - GLSurfaceView 和 Sceneform 有什么区别?
- r - select.list() 的问题