我正忙着创建我的第一个Facebook应用程序,虽然我有PHP和Javascript的经验,我很难理解如何建立一个Facebook应用程序的逻辑工作
从最基本的我明白我需要:
- 设置一些opengraph项目,这些项目看起来只是一些meta标签。
- 我需要包含一个脚本,如下所示,就在我的body标签之后: 我必须运行一个脚本:就在下面
- 我的HTML需要下面列出的一些代码。 我可以包含Facebook PHP库。
1) opengraph元标签的目的是什么?这对我的申请有影响吗?
2)脚本:<!-- Load the Facebook SDK -->
<div id="fb-root"></div>
<script src="http://connect.facebook.net/en_US/all.js"></script>
<script>
// IS IT FAIR TO ASSUME THIS AREA BELOW CREATES THE FACEBOOK OBJECT?
window.fbAsyncInit = function() {
FB.init({
appId : 'APP ID', // App ID
status : true, // check login status
cookie : true, // enable cookies to allow the server to access the session
oauth : true, // enable OAuth 2.0
xfbml : true // parse XFBML
});
};
// WHAT DOES THIS DO?
(function(d){
var js, id = 'facebook-jssdk'; if (d.getElementById(id)) {return;}
js = d.createElement('script'); js.id = id; js.async = true;
js.src = "//connect.facebook.net/en_US/all.js";
d.getElementsByTagName('head')[0].appendChild(js);
}(document));
</script>
3)脚本(也在上面)。这是做什么的?我是否可以假设它的工作原理与jQuery框架类似,并且需要我加载上面的代码?
<script src="http://connect.facebook.net/en_US/all.js"></script>
4)我的HTML标签更改为下面的代码。这是什么,为什么需要?
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:og="http://ogp.me/ns#"
xmlns:fb="https://www.facebook.com/2008/fbml">
5)虽然我理解包含PHP库背后的逻辑,Javascript和PHP库之间的区别是什么?它能有效地做同样的事情吗?
抱歉愚蠢的问题,但在现实中,我发现Facebook不是很用户友好的人试图进入应用程序开发,因为他们的文档感觉"分散",而不是真正的最新?
1 - open graph协议实际上在文档中有很好的解释。那里的数据是facebook将为你的页面索引,所以当有人与页面交互时显示的内容(例如点赞)
2 -在空格中你写了'//WHAT DOES THIS DO?,你可以在facebook API加载完成后立即运行你想要的方法和功能。所以你可能想要隐藏你所有的facebook部门等,直到这一点,或者采取一些行动,以获得用户的登录状态,只要api准备好了。还需要注意的是,你在上面的代码中不需要这个位:
<script src="http://connect.facebook.net/en_US/all.js"></script>
这已经在你的'(function(d){…在底部咬了一口。查看加载js api的文档。
3是加载facebook js api的script标签
4—这是您需要告诉页面的名称空间,以便它读取og元数据。同样,这在开放图形协议文档
中有很好的解释。5 - JS是客户端。