Facebook应用程序开发101

时间:2011-11-08 08:54:03

标签: php javascript jquery html facebook

我正在忙着创建我的第一个Facebook应用程序,虽然我有PHP和Javascript经验,但我很难理解为Facebook设置应用程序的逻辑如何工作。

从最低限度起,我了解到我需要:

  1. 设置一些opengraph项目,这些项目似乎只是一些元标记。
  2. 我需要在我的正文标记后面加上如下所示的脚本:
  3. 我必须运行一个脚本:就在
  4. 下面
  5. 我的HTML需要下面列出的一些代码。
  6. 我可以加入Facebook PHP库。
  7. 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 个答案:

答案 0 :(得分:1)

1 - 实际上在documentation中很好地解释了开放图形协议。其中的数据是Facebook将为您的页面编制索引,因此当有人与页面进行交互时显示的内容(例如,等)

2 - 在你写过的空间'//你做了什么?',你可以在facebook api加载后立即运行你想要运行的方法和功能。因此,您可能希望隐藏所有Facebook部门等,直到此时,或者在api准备好后立即采取一些操作来获取用户的登录状态。另请注意,您在上面的代码中不需要这个位:

<script src="http://connect.facebook.net/en_US/all.js"></script>

这已经加载到你的'(函数(d){...'位于底部。在加载js api时查看documentation

3 - 这是加载facebook js api

的脚本标记

4 - 这是您需要告诉页面的名称空间,以便它读取og元数据。同样,这在open graph protocol documentation

中得到了很好的解释

5 - JS是客户端。 Php是服务器端。