- Cordova 教程
- Cordova - 首页
- Cordova - 概述
- Cordova - 环境设置
- Cordova - 第一个应用程序
- Cordova - config.xml 文件
- Cordova - 存储
- Cordova - 事件
- Cordova - 返回按钮
- Cordova - Plugman
- Cordova - 电池状态
- Cordova - 摄像头
- Cordova - 联系人
- Cordova - 设备
- Cordova - 加速计
- Cordova - 设备方向
- Cordova - 对话框
- Cordova - 文件系统
- Cordova - 文件传输
- Cordova - 地理位置
- Cordova - 全球化
- Cordova - InAppBrowser
- Cordova - 媒体
- Cordova - 媒体捕获
- Cordova - 网络信息
- Cordova - 启动画面
- Cordova - 振动
- Cordova - 白名单
- Cordova - 最佳实践
- Cordova 有用资源
- Cordova - 快速指南
- Cordova - 有用资源
- Cordova - 讨论
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 hook 向我们的应用程序发出所有网络请求。如果您只想允许特定请求,可以将其从 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,您可以尝试一些不同的值。
广告