我有一个使用控制台插件的 Cordova 7.0.1 项目,以便我可以在 iOS 上console.log()
。该插件一直工作到重定向,例如
window.location.href = 'index.html';
此时,即使console.log()
仍然有效,alert()
也会停止工作。这很令人沮丧,因为应用程序此时无响应(尝试登录(,并且使用警报进行调试很痛苦。
在XCode控制台中,我有以下内容:
2017-06-12 15:01:14.828 APP [x:x] Session validated
2017-06-12 15:01:14.835 APP [x:x] Resetting plugins due to page load.
2017-06-12 15:01:15.491 APP [x:x] Finished load of: file:///Users/X/Library/Developer/CoreSimulator/Devices/X/data/Containers/Bundle/Application/X/APP.app/www/index.html
"会话已验证"是控制台日志。
我的问题是CSP声明,因为我gap:
在错误的地方。这是我所拥有的:
<meta http-equiv="Content-Security-Policy"
content="default-src 'self' 'unsafe-inline' *; style-src 'self' 'unsafe-inline' *; script-src 'self' 'unsafe-inline' *; img-src 'self' 'unsafe-inline' * data: gap:;">
这就是我用它替换的:
<meta http-equiv="Content-Security-Policy"
content="default-src 'self' data: gap: 'unsafe-inline' *; style-src 'self' 'unsafe-inline' *; script-src 'self' 'unsafe-inline' *; img-src 'self' 'unsafe-inline' * data:;">