如何用Codeigniter调整配置Facebook sdk4?

时间:2015-05-24 13:39:07

标签: php facebook .htaccess codeigniter facebook-graph-api

我在我的codeigniter文件上设置了Facebook sdk4。 这就是我所做的一切。 - 将我的应用注册为FB应用程序 - 在库目录上实现FB sdk - 如下修改控制器 - 配置.htaccess如下 - Codeigniter ver 3.0RC3

我的网站就在这里。 https://dashboard.come-to.tokyo/

当我点击登录时,它会重定向'404 Page Not Found'。 网址是这样的。 https://dashboard.come-to.tokyo/?code=XXXX

Controller.php这样

function index(){
    // UsreAgent
    $this->load->library('user_agent');

    // Common librualy
    $this->load->library('facebook');
    // grab facebook login url
    $this->login_url = $this->facebook->login_url();
    //$this->session = $this->facebook->get_session();

var_dump ($this->login_url);

// see if we have a session
if ( isset( $this->session ) ) {
  // graph api request for user data
  $request = new FacebookRequest( $session, 'GET', '/me' );
  $response = $request->execute();
  // get response
  $graphObject = $response->getGraphObject();

  // print data
  print_r( $graphObject, 1 );
} else {
  // show login url
  echo '<a href="' . $this->login_url . '">Login</a>';
}

的.htaccess

RewriteEngine On
RewriteBase /

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

我该怎么办?我想像'?code = XXX'这样的参数不能正常工作。 提前谢谢。

1 个答案:

答案 0 :(得分:0)

为了检测code=x,您需要将查询字符串追加标记添加到RewriteRule,如下所示:

RwriteRule ^(.*)$ index.php?$1 [QSA,L]

这会将URI中的任何查询字符串附加到已存在的?$1