我有一个FB页面选项卡应用程序 - 基本上是iframe中的一个网页,当用户点击页面选项卡时会显示。
在网页内我有一个Twitter按钮。我正在使用Twitter的API来找出用户成功发布推文的时间。这是我用于此的代码:
twttr.events.bind('tweet', function(event) {
alert("tweet's ocured");
});
问题是 - 如果我正常查看页面,我会在推文后收到alert()
。如果我从Facebook查看它不起作用....就好像Twitter的回复没有传递到Fb上的页面?
此外,在我的控制台中,我收到以下警告:
TWITTER:内容安全政策限制可能适用于您的 现场。加入supress 这个警告。
TWITTER:请注意:并非所有嵌入式时间轴和嵌入式推文 应用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”设置为 允许访问的值相同。
之前有没有人处理过这些问题?如果有这样的帮助,我们非常感谢!
答案 0 :(得分: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已无法运行。你还有一个版本的页面要看吗?