2015-06-16 66 views
4

在cordova的第5版上開發應用程序(使用phonegap框架)。最新的更新要求你使用一個內容安全,政策meta標籤按照他們的文檔:https://github.com/apache/cordova-plugin-whitelistContent-Security-Policy打破console.log輸出

這裏是我的應用程序標籤:

<meta http-equiv="Content-Security-Policy" content="default-src *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval' *.example.com"> 

當我包括這一切工作正常,除了的console.log消息在運行「phonegap serve」時不要將其推送到終端(提供的工具可使用預先安裝在設備上的應用程序「測試」您的應用程序)。

但是,如果我從我的代碼中刪除標記,那麼console.log消息會被正確推送到終端,但我無法再向我的example.com域發出數據請求。

我已經嘗試了許多使用http://content-security-policy.com/作爲指導的差異,但我無法讓它正常工作。

注意:這是cordova v5中的一個新工具,因爲以前這一切都沒有問題。

回答

7

這裏是我的設置示例Content-Security-Policy。我沒有生產*,但後來我用*替換了所有接受的位置。

另外我需要爲IOS平臺添加gap://ready。不太清楚爲什麼這需要,但是當我在IOS上調試時,我發現它在gap://ready上拋出了一個錯誤。

<meta http-equiv="Content-Security-Policy" content="default-src 'self' * gap://ready; style-src 'self' 'unsafe-inline' *; script-src 'self' 'unsafe-inline' 'unsafe-eval' *"> 

隨着上述行我的console.log()消息確實出現。

+0

工作表示感謝 - 我會進一步研究以查看是否能夠確定確切的原因,但在它的表面上,它看起來與差距有關://準備就緒 –