我的Facebook应用有问题。 我有两个不同的应用程序,有两个appIds。我想把它们放在一页上。 如果我使用iframe,这没问题。如果我使用以下,嗯。我不知道如何在一个页面中获得2个appIds。 顺便问一下,有人知道如何在同一个按钮中停用评论功能吗?
window.fbAsyncInit = function() {FB.init({
appId : 'APP_ID_1',
status : false, // check login status
cookie : true, // enable cookies to allow the server to access the session
xfbml : true, // parse XFBML
oauth : false, //enables OAuth 2.0
});
FB.Event.subscribe('edge.create', function(targetUrl) {
_gaq.push(['_trackSocial', 'facebook', 'like', targetUrl]);
});
FB.Event.subscribe('edge.remove',function(targetUrl){ _gaq.push(['_ trackSocial','facebook','不同',targetUrl]); }); };
(function() {
var e = document.createElement('script');
e.src = document.location.protocol + '//connect.facebook.net/de_DE/all.js';
e.async = true;
document.getElementById('fb-root').appendChild(e);
}());
<?php //like button ?>
<fb:like layout="button_count" font="arial" href="http://www.example.com/eeee"></fb:like>
答案 0 :(得分:1)
出于安全原因,必须将APP ID链接到单个域。请参阅应用程序设置(https://developers.facebook.com/apps)上的“站点URL”字段。您将无法从同一URL上的两个不同APP ID进行身份验证(或执行需要身份验证,对话框等的呼叫)。您可以将两个APP代码组合在一个代码上。为什么需要两个不同的APP ID?
如果您详细说明了您想要实现的功能,我可能会建议您另一种解决方案。
非常感谢
Daniel Torvisco - Facebook开发人员支持工程师
答案 1 :(得分:0)
为什么不使用iframes
,只需在两个不同的iframe部分添加您想要的内容(使用JS来控制它们)。布局屏幕时会遇到一些问题,但我确信你的设计师可以使用它。关于那件事,有人告诉过安全问题,那就是胡说八道。您可以根据需要定义任意数量的应用程序,并且在每个应用程序中,您可以拥有任意数量的域。要在不同的域中进行测试,只需使用您在应用程序中定义的相同域配置/etc/hosts
文件(Windows上的我知道有hosts
文件,但不知道它在哪里)。如果你想使用一些特定的FB API调用,那么你可以找到一些问题,这可能是解决这些OAuth验证和授权必需品的绝招,但对于你问的按钮,应该很容易实现。
希望它有所帮助。最好,