【问题标题】:Facebook Application Using CodeIgniter使用 CodeIgniter 的 Facebook 应用程序
【发布时间】:2010-02-16 08:19:39
【问题描述】:

我正在使用 iframe 渲染构建 Facebook 应用程序。我想将 CodeIgniter 用于后端,并且想知道应该为 CodeIgniter 和 Facebook 设置哪些设置才能相处。我想知道的具体设置是:

  1. Facebook 的画布回调 url(是否应该包含默认的控制器和函数)?
  2. config.php 的 base_url、index_page、uri_protocol、enable_query_strings
  3. 我可能遗漏的任何其他内容

我目前如何设置 Facebook 交互是创建一个新的控制器 FB_Controller,它被添加到我的每个控制器都继承自的库文件夹中。 FB_Controller 继承自 Controller 并具有一个属性 $facebook,该属性在构造时使用 API 密钥和秘密进行实例化。不确定这是否是最好的方法。

我也在使用 mod_rewrite 来摆脱 index.php,所以这里的代码没有混淆:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /

    RewriteCond %{REQUEST_URI} ^system.*
    RewriteRule ^(.*)$ /index.php?/$1 [L]

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php?/$1 [L]
</IfModule>

【问题讨论】:

    标签: php codeigniter facebook


    【解决方案1】:

    您不需要做任何特别的事情来让 Facebook 与您的 CodeIgniter 应用程序一起工作。

    1. 画布回调 URL 是您应用的登录页面。这是 Facebook 在用户接受您的应用后呈现给用户的页面。这通常是您的应用程序的根 URL(对应于默认控制器的 index 操作方法的页面)。但您可以将其设置为您喜欢的任何 URL。
    2. 将 base_url 设置为 Web 应用程序的根 URL,例如。 www.example.com/myapp/ (记得包含斜杠)。如果您打算从 URL 中删除 index.php,请将 index_page 设置为空字符串。将 uri_protocol 和 enable_query_strings 保留为默认值,除非您有充分的理由不这样做。
    3. 同样,您不需要做任何特别的事情来使您的 CodeIgniter 应用程序与 Facebook 兼容。

    和你一样,我不喜欢在我的 CodeIgniter 应用程序的 URL 中包含 index.php,因此我通过为 Apache 启用 mod_rewrite 并将 .htaccess 文件添加到我的项目的根目录中来删除它们:

    RewriteEngine on
    RewriteCond $1 !^(index\.php|images|robots\.txt)
    RewriteRule ^(.*)$ index.php/$1 [L]
    

    【讨论】:

    • 您尝试过这样做吗?除非 uri_protocol 是 path_info,否则应用程序上的链接在 Facebook 中不起作用。但随后网络应用程序将无法工作(其中的链接)。
    • 我不明白。除非 uri_protocol 设置为 path_info,否则为什么链接在 Facebook 应用中不起作用?
    • 不知道为什么我必须这样做,但我只是在域名上做了一个条件语句,将其设置为 path_info 或 uri_protocol
    【解决方案2】:

    我只在我的应用程序中使用 facebook connect,以自动登录已将其帐户与 facebook 帐户连接的访问​​者。

    我在我的应用程序中使用facebook connect library。该库由Elliot Haughin 创建。看看吧,也许它可以让你开始创建自己的库。

    【讨论】:

      猜你喜欢
      • 2012-12-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-31
      • 2015-09-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多