FaceBook插件开发

 

FaceBook迅速风靡的原因之一就是他的数据开放模式,也就是允许第三方开发网站插件来共享FB站点里的用户数据。

有关插件开发的教程在FB官方也有 地址是 http://developers.facebook.com/get_started.php
有兴趣的朋友可以自己看 :)

开发模式简介:
FB提供了一些列的API以及开发框架 供用户在FB平台实现自己的功能。允许用户使用PHP5、PHP4、Ruby 、Python、JAVA 、.NET等各种语言进行开发。官方推荐的是用PHP5。
要创建一个有效的应用程序 需 要在FB官方登记注册,填写插件的相关信息,callback URL等。我们要明确这个插件的具体执行程序是放在用户自己的服务器上的(如果没PHP5的空间,你可以在LUPA免费申请一个)。而用户在使用集成在 FB站点里的插件时,是由FB系统到插件开发者制定的网站地址去获取执行结果或者界面内容。

建立一个HELLO WORLD插件:
    1. 进入开发者首页 http://developers.facebook.com/
    2. 点击 'Get Started'
    3. 点击 'Add Facebook Developer Application'
    4. 可以看到页面里有 'Developer' 字样。
    5. 点击按钮 'Setup New Application'
    6. 现在来完成表单的填写:
          1. Application Name: 这是我们这个插件的名字,我用的是sanooltest,大家也可以通过 http://www.lupaworld.com/public/sanool/fb/ 来添加我刚做的测试插件。
          2.勾选同意相关协议的按钮。FB在这方面做的很严谨,包括每次上传图片都需要表明你的态度。
          3. 点击 Optional Fields 链接,之后页面会出现更多的填写内容。
          4. Support E-mail: 就是你自己的邮箱。
          5. Callback Url: 回调页面地址,也就是你打算把开发好的插件上传到哪里,我这里填写的就是 http://www.lupaworld.com/public/sanool/fb/
          6. Canvas Page URL: http://apps.facebook.com/: 我填写的是sanooltest,你可以取一个属于自己的名字。
          7. Use FBML: 默认即可。
          8. Application Type:   默认即可,我们目前开发的还好四website类型的。
          9. Can your application be added to Facebook: 选择 YES
         10. TOS URL: 留空
         11. Post-Add Url: 我们使用 http://apps.facebook.com/sanooltest/ , 请你将之前设定的Canvas Page URL的内容替换这里的sanooltest
         12. Default FBML: 输入 hello world
         13. 其他 字段可以不用处理。
         14. Side Nav Url: 这个左侧导航菜单的地址,我们使用 http://apps.facebook.com/sanooltest/ , 请你将之前设定的Canvas Page URL的内容替换这里的sanooltest
         15. 其他的不用处理。
    7. 点击 'Submit' 按钮。
    8. 进入 'My Applications' 页面,你可以看到该插件已经常见,你可以对插件属性继续修改,并可以看到一个 API Key 和 Secret。这两个字符串在我们的插件页面中要用到。
    9. 找到一个PHP5的网站空间。
   10. 配置FB开发环境,如果你是用linux的,那逐步执行以下脚本。

       wget http://developers.facebook.com/clientlibs/facebook-platform.tar.gz
       tar zxvf facebook-platform.tar.gz
       cp facebook-platform/client/facebook.php .
       cp facebook-platform/client/facebookapi_php5_restlib.php .
       rm -rf facebook-platform.tar.gz facebook-platform

   11. 创建 'appinclude.php' 文件,这个是必须的,让FB知道这个插件的合法性。源码如下:

              require_once 'facebook.php';

       $appapikey = '[your api_key]';
       $appsecret = '[your secret]';
       $facebook = new Facebook($appapikey, $appsecret);
       $user = $facebook->require_login();

       //[todo: change the following url to your callback url]
       $appcallbackurl = 'http://tperry256.dreamhost.com/f8/tutorialapp/';  

       //catch the exception that gets thrown if the cookie has an invalid session_key in it
       try {
         if (!$facebook->api_client->users_isAppAdded()) {
           $facebook->redirect($facebook->get_add_url());
         }
       } catch (Exception $ex) {
         //this will clear cookies for your application and redirect them to a login prompt
         $facebook->set_user(null, null);
         $facebook->redirect($appcallbackurl);
       }
       ?>

   12.用刚才得到的字符串去替换源码里的 '[your app_key]' 和 '[your secret]'。 另外再将 appcallbackurl 替换成插件地址。我用的还是 http://www.lupaworld.com/public/sanool/fb/
   13.创建首页 'index.php'。内容如下:

              require_once 'appinclude.php';

       echo "

hello world

";
       ?>

   14. 把facebook.php facebookapi_php5_restlib.php appinclude.php index.php四个文件上传到网页空间,确保之前填写的CALLBACK URL能正确访问到index.php
   15. 在浏览器里打开 CALLBACK URL,FB会引导你进入插件添加过程,到此为止整个开发过程结束。

后记:
想要继续深入,那就该了解下API文档了。有兴趣的朋友继续。目前本人正在开发一个插件,希望有兴趣的朋友一起参与。
目前官方FB中文站还没推出,所以在语言以及访问速度方面不理想,但进入中国 是早晚的事情,如果我们能把握先机,做出特色应用。呵呵。  
欢迎上FB与我联系。

你可能感兴趣的:(Facebook,Develop)