Problem Anzeige XFBML mit pyfacebook
-
29-09-2019 - |
Frage
Ich verwende pyfacebook auf meiner app aber ich habe Probleme mit der Anzeige XFBML Zum Beispiel muss ich Iframes Display wie Schaltflächen oder wie Boxen verwenden.
Was ist seltsam: 1) auf der Anmeldeseite das Symbol angezeigt werden richtig, ich habe nur Probleme auf anderen Seiten (einmal angemeldet)
2) Die FB.init Teil I verwendet wird
<script src="http://static.ak.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php/en_US" type="text/javascript"></script>
<script type="text/javascript">FB.init("{{ apikey }}", '/static/xd_receiver.html');
Während auf der Facebook-docs die Argumente sind:
FB.init({
appId : 'YOUR APP ID',
status : true, // check login status
cookie : true, // enable cookies to allow the server to access the session
xfbml : true // parse XFBML
});
3) Wenn ich die FB.init auf der offiziellen fb eine Änderung Anwendung funktioniert nicht mehr. (ZB kann ich nicht Abmelde mit diesem
<a href="#" onclick="javascript:FB.Connect.logoutAndRedirect('/')">Logout</a>
Ich bin relativ neu in FB stuff, so dass ich wahrscheinlich bin Dinge mischen, aber ich möchte nur richtig Fbml auf meine App angezeigt werden, ohne zu viel der Server-Seite zu ändern.
Lösung
Ich glaube, du verwechselst Facebook alte Javascript API mit ihren neuer JavaScript-API .
Wie auf der neuen API-Seite erwähnt, verwenden diese die init zu tun:
<div id="fb-root"></div>
<script>
window.fbAsyncInit = function() {
FB.init({appId: 'your app id', status: true, cookie: true,
xfbml: true});
};
(function() {
var e = document.createElement('script'); e.async = true;
e.src = document.location.protocol +
'//connect.facebook.net/en_US/all.js';
document.getElementById('fb-root').appendChild(e);
}());
</script>
Für die Abmeldung, würden Sie so etwas wie dies wollen:
<a href="#" onclick="javascript:FB.logout(function(response) {window.location.href = '/';})">Logout</a>