5

我有一个 FB 页面选项卡应用程序 - 基本上是 iframe 内的网页,当用户单击页面选项卡时会显示。

在网页中,我有一个 Twitter 按钮。我正在使用 Twitter 的 API 来了解用户何时成功发布推文。这是我用于此的代码:

twttr.events.bind('tweet', function(event) {
    alert("tweet's ocured");
});

问题是 - 如果我正常查看页面,我会收到alert()一条推文后的消息。如果我从 Facebook 上查看它就不起作用.... 好像 Twitter 的响应没有传递到 Fb 上的页面?

此外,在我的控制台中,我收到以下警告:

推特:内容安全政策限制可能适用于您的网站。添加以抑制此警告。

.

推特:请注意:应用 CSP 时,并非所有嵌入式时间线和嵌入式推文功能都受支持。

.

阻止来源为“ http://giveaway-testing.herokuapp.com ”的框架访问来源为“ http://www.facebook.com ”的框架。被访问的框架将“document.domain”设置为“facebook.com”,但请求访问的框架没有。两者都必须将“document.domain”设置为相同的值才能允许访问。

.

阻止来源为“ http://platform.twitter.com ”的框架访问来源为“ http://www.mysitehere.com ”的框架。请求访问的框架将“document.domain”设置为“twitter.com”,但被访问的框架没有。两者都必须将“document.domain”设置为相同的值才能允许访问。

以前有人处理过这些问题吗?如果有帮助,将不胜感激!

4

1 回答 1

2

要解决“TWITTER”控制台消息,请将以下代码添加到您的页眉:

<meta name="twitter:widgets:csp" content="on">

元标记的使用在 Twitter 开发人员文档的底部进行了说明:https ://dev.twitter.com/web/overview/widgets-meta-elements 。

其他警告与 JavaScript 的同源策略有关。您原始帖子中提到的警告之一中的http://giveaway-testing.herokuapp.com不再可操作。您还有要查看的页面版本吗?

于 2014-09-17T23:27:01.007 回答