我是Chrome扩展程序的作者,可以直接在Facebook上翻译状态更新和评论:https://chrome.google.com/webstore/detail/facebook-translate/plofenifjagmdikfcobngnfmmnfmphin
现在,我的用户和我在错误控制台中出现了错误:
拒绝连接到“https://api.microsofttranslator.com/V2/Http.svc/Translate?appId=&text=Chrome-Integration%3A+Google+bringt+Google+Now+auf+Desktop-PCs&to=en&contentType=text%2Fhtml”,因为它违反了以下内容安全策略指令:“connect-src https:// .facebook.com http:// .facebook。 com https:// .fbcdn.net http:// .fbcdn.net * .facebook.net .spotilocal.com: https:// .akamaihd .net ws:// .facebook.com:* http://*.akamaihd.net“。
在我的Chrome扩展程序中,我确实将内容安全策略设置如下:
“content_security_policy”:“script-src'self'https://ssl.google-analytics.com; object-src'self'”
然而,错误控制台中的URI只是FB URI,这就是为什么我认为Facebook确实更新了他们的网站以限制对远程URI的访问。我不确定它是否可能是Chrome问题,如果我在错误的stackoverflow网络上启动主题,那就很抱歉。 :)
任何人都可以确认(并且可能指出我可能的解决方案)这个问题吗?谢谢大家!
答案 0 :(得分:10)
从内容脚本执行XMLHTTPRequest时,扩展名应绕过页面的内容安全策略。他们目前不是,这是一个错误。我已经提交了https://bugs.webkit.org/show_bug.cgi?id=104480来修改它。
您是从扩展程序的内容脚本执行XHR,还是在后台页面中执行?后者现在应该可以工作。
答案 1 :(得分:0)
错误消息显示您正在尝试连接到“https:// api。microsofttranslator
.com /域”,但未在CSP指令的connect-src中指定
好像你已经列出了
"connect-src
https://.facebook.com
http://.facebook.com
https://.fbcdn.net
http://.fbcdn.net *.facebook.net .spotilocal.com:
https://.akamaihd.net ws://.facebook.com:*
http://*.akamaihd.net".
connect-src政策的上述域名,如果有效,请添加新域名microsofttranslator
。com。
如果您需要更多信息,请与我们联系。
答案 2 :(得分:0)
我突然遇到了这个问题
暂停了域上的广告拦截器,现在可以使用了