- 科尔多瓦教程
- 科尔多瓦 - 主页
- 科尔多瓦 - 概述
- 科尔多瓦 - 环境设置
- 科尔多瓦 - 第一次申请
- Cordova - Config.xml 文件
- 科尔多瓦 - 存储
- 科尔多瓦 - 活动
- 科尔多瓦 - 后退按钮
- 科尔多瓦 - 普拉格曼
- Cordova - 电池状态
- 科尔多瓦 - 相机
- 科尔多瓦 - 联系方式
- 科尔多瓦 - 设备
- Cordova - 加速度计
- Cordova - 设备方向
- 科尔多瓦 - 对话
- 科尔多瓦 - 文件系统
- 科尔多瓦 - 文件传输
- 科尔多瓦 - 地理定位
- 科尔多瓦 - 全球化
- Cordova - InAppBrowser
- 科尔多瓦 - 媒体
- Cordova - 媒体捕获
- 科尔多瓦 - 网络信息
- 科尔多瓦 - 启动画面
- 科尔多瓦 - 振动
- 科尔多瓦 - 白名单
- 科尔多瓦 - 最佳实践
- 科尔多瓦有用资源
- 科尔多瓦 - 快速指南
- 科尔多瓦 - 有用的资源
- 科尔多瓦 - 讨论
科尔多瓦 - 白名单
该插件允许我们为应用程序的导航实施白名单策略。当我们创建一个新的Cordova项目时,默认会安装并实现白名单插件。您可以打开config.xml文件来查看Cordova提供的allow-intent默认设置。
导航白名单
在下面的简单示例中,我们允许链接到某些外部 URL。此代码放置在config.xml中。默认情况下允许导航到file:// URL。
<allow-navigation href = "http://example.com/*" />
星号符号 * 用于允许导航到多个值。在上面的示例中,我们允许导航到 example.com 的所有子域。这同样适用于主机的协议或前缀。
<allow-navigation href = "*://*.example.com/*" />
意图白名单
还有allow-intent元素,用于指定允许哪些URL 打开系统。您可以在config.xml中看到Cordova 已经允许我们使用大部分所需的链接。
网络请求白名单
当您查看config.xml文件时,会发现有<access origin="*" />元素。此元素允许通过 Cordova 挂钩向我们的应用程序发出所有网络请求。如果您只想允许特定请求,可以从 config.xml 中将其删除并自行设置。
使用与前面的示例相同的原理。
<access origin = "http://example.com" />
这将允许来自http://example.com的所有网络请求。
内容安全政策
您可以在index.html的head元素内查看应用程序的当前安全策略。
<meta http-equiv = "Content-Security-Policy" content = "default-src 'self' data: gap: https://ssl.gstatic.com 'unsafe-eval'; style-src 'self' 'unsafe-inline'; media-src *">
这是默认配置。如果您想允许来自同一来源和example.com 的所有内容,那么您可以使用 -
<meta http-equiv = "Content-Security-Policy" content = "default-src 'self' foo.com">
您还可以允许一切,但将 CSS 和 JavaScript 限制为同一来源。
<meta http-equiv = "Content-Security-Policy" content = "default-src *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval'">
由于这是初学者教程,我们建议使用默认的 Cordova 选项。一旦熟悉了 Cordova,您就可以尝试一些不同的值。