Github上具有以下Content Security Policy:內容安全策略和書籤
內容安全-政策:默認-SRC *; script-src assets-cdn.github.com www.google-analytics.com collector-cdn.github.com; object-src assets-cdn.github.com; style-src 'self''unsafe-inline''unsafe-eval'assets-cdn.github.com; img-src 'self'data:assets-cdn.github.com identicons.github.com www.google-analytics.com collector.githubapp.com * .githubusercontent.com * .gravatar.com * .wp.com ; media-src'none'; frame-src'self'render.githubusercontent.com www.youtube.com player.vimeo.com checkout.paypal.com; font-src assets-cdn.github.com; 連接-SRC「自我」 ghconduit.com:25035 live.github.com uploads.github.com s3.amazonaws.com
我們可以剪輯/與服務的瀏覽器擴展檢索的網頁內容喜歡的Evernote或口袋。
我在這個Github政策中沒有看到任何對Pocket或Evernote的引用。有人可以解釋爲什麼Pocket擴展能夠從Github檢索內容,而Evernote擴展沒有,具有CSP error)
CSP策略是否可以防止加載小書籤應用或瀏覽器擴展應用(如裁剪器)?如果是這樣,Pocket如何能夠在任何內容上進行擴展?
我們已經在我們的bookmarklet /擴展這個問題,我想他們的工作掌上擴展順利,但我真的不知道從哪裏開始...謝謝
編輯: 隨着人們在評論中要求的代碼,我們的書籤加載這個JavaScript:
javascript: (function() {
function loadScript(a, b) {
var c = document.createElement('script');
c.type = 'text/javascript';
c.src = a;
var d = document.getElementsByTagName('head')[0],
done = false;
c.onload = c.onreadystatechange = function() {
if (!done && (!this.readyState || this.readyState == 'loaded' || this.readyState == 'complete')) {
done = true;
b()
}
};
d.appendChild(c)
}
loadScript('http://localhostsss.com:9000/assets/js/backbone/views/clipping/clippinglocal.js', function() {
s.clipping.initClipping()
})
})()
如果我嘗試在一個頁面中,其中有一個CSP推出這個書籤,我得到以下錯誤。
拒絕加載腳本 'http://localhostssss.com:9000/assets/js/backbone/views/clipping/clippinglocal.js' 因爲它違反了以下內容安全策略指令: 「腳本的src'不安全-EVAL '不安全內聯' 有關: https://開頭。 akamaihd.net HTTP:// .baidu.com https://bitly.com https://開頭.cloudfront.net https://開頭 .facebook.com https://開頭.facebook.net https://getpocket.com https://開頭 .github .com https:// .googleapis.com https://ssl.google-analytics.comhttps://app.greenhouse.io https://開頭 .medium.com https://myspace.com https://開頭.pinterest.com https://www.readability.comhttps://thinkery.mehttps://this.cm https://開頭 .twitter.com https://use.typekit.net的https://*.instapaper.com 自我「」。
有人可以告訴我如何使我們的書籤可加載在像中等或Github的網站上,這些網站有CSP策略。
我不能談論這麼多關於瀏覽器擴展的問題,因爲我還沒有開發它,而且這個人不在這裏。我只知道我們有同樣的問題,我們的瀏覽器擴展與我們的bookmarklets基本上是相同的代碼,只是它有點適合瀏覽器擴展外殼。如果你只能回答書籤的情況下,我會沒事的,接受答案,但任何提示瀏覽器擴展將不錯:)
我可以請求更多的上下文嗎?這是關於github應用程序或網頁的問題嗎? evernote與evernote應用程序或網頁有問題嗎?如果這是github應用程序的問題,並且您希望允許您的應用程序與evernote網站通信,則需要在manifest.json中添加權限。 – 2014-08-27 16:54:05
@ petewil-G我們正在開發一款類似Evernote/Pocket的剪輯器,我們需要能夠使用CSP策略(如Github或Medium)剪輯網站上的內容。我們同時擁有書籤和瀏覽器擴展('manifest.json'不適用於我認爲的bookmarklets) – 2014-08-27 17:11:24
請刪除google-chrome-app標記,因爲此問題與Chrome應用無關。 – 2014-08-27 20:51:23