gpt4 book ai didi

javascript - Bookmarklet 无法在 Facebook 上注入(inject) javascript

转载 作者:行者123 更新时间:2023-11-30 17:29:23 24 4
gpt4 key购买 nike

我创建了一个小书签。当用户单击它时,它会向页面添加一个带有 src 的脚本元素。这个包含实际代码的 src 然后被加载并在页面上执行。标准书签内容。

但是,它现在已停止在 Facebook.com 上运行。脚本元素确实被添加到正文中,但 src 从未被加载。我检查了网络选项卡,它甚至没有尝试加载它。

<script src="https://mysite/bookmarklet.js?1399316963279">
Reload the page to get source for: https://mysite/bookmarklet.js?1399316963279
</script>

(编辑:当小书签起作用时,我也收到了重新加载消息。所以这与它没有直接关系。)

此问题仅出现在 Facebook 上。小书签适用于其他页面,也适用于 https 页面 (gmail)。我已经看到其他小书签在 Facebook 上也有同样的问题。我在 Firefox 中尝试过(在 Chrome 中尝试过)。

它曾经工作得很好。不确定它何时停止。

有什么办法吗?

编辑:现在使用小书签脚本。

javascript:(function(){var%20s=document.createElement('script');p='';if(location.protocol%20===%20'https:'){p='s';}%20s.setAttribute('src','http'+p+'://mysite/bookmarklet.js?'+new%20Date().getTime());document.getElementsByTagName('body')[0].appendChild(s);})();

最佳答案

如果您查看从 facebook.com 发送的 header ,您将看到以下内容:

content-security-policy: default-src *;script-src https://*.facebook.com http://*.facebook.com https://*.fbcdn.net http://*.fbcdn.net *.facebook.net *.google-analytics.com *.virtualearth.net *.google.com 127.0.0.1:* *.spotilocal.com:* 'unsafe-inline' 'unsafe-eval' https://*.akamaihd.net http://*.akamaihd.net *.atlassolutions.com chrome-extension://lifbcibllhkdhoafpjfnlhfpfgnpldfl;style-src * 'unsafe-inline';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 https://fb.scanandcleanlocal.com:* *.atlassolutions.com http://attachment.fbsbx.com https://attachment.fbsbx.com;

他们正在将可以从中加载脚本的域列入白名单,这就是您的脚本被阻止的原因。

关于javascript - Bookmarklet 无法在 Facebook 上注入(inject) javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23479821/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com