如何使用 graph api 和 codeigniter 在 facebook 应用程序上请求许可?

问题描述 投票:0回答:1

我一直在使用 Codeigniter 和 facebook 开发一个应用程序...根据我在 fb 应用程序上看到的情况,事情应该更容易...但是我在 CI 方面的经验使它有点困难...我根据一些提示编写了一些代码阅读和文档...我仍然可以使其仅适用于创建应用程序的配置文件...其他配置文件只是不请求许可并且所有返回 null...

这是我的代码

function index()
{
    $this->load->library('facebook', 'config/facebook');
    $user = $this->facebook->getUser();
    if ($user) {
        try {
           $data['profile'] = $this->facebook->api('/me');
        } catch (FacebookApiException $e) {
            $user = null;
            }
    }

    if ($user) {
        $data['logout_url'] = $this->facebook->getLogoutUrl();
    } else {
        $data['login_url'] = $this->facebook->getLoginUrl();
    }
    $this->load->view('home/home_view',$data);
}

我设置了 facebook 库和 config/facebook 它只是一个配置文件......我应该放一些像

$this->facebook->getLoginUrl(array(
'req_perms' =>   'read_stream,email , user_birthday,user_about_me,friends_likes'
));

并且应该可以工作(至少在 php 上有效),当有人进入我的应用程序时要求允许提供信息和所有...仍然没有任何效果,知道我做错了什么吗?

提前致谢。

php facebook codeigniter facebook-graph-api
1个回答
0
投票

尝试将您需要的字段或您想从用户那里获取的字段添加到 api 链接:

 $profile = $this->facebook->api('/me?fields=id,username,email');

它在我的应用程序中有效。您还必须检查传递给库的数据配置是否正确。像这样的东西:

 $this->config->load('facebook', TRUE);
 $config = array(
       'appId'  => $this->config->item('facebook_api_id', 'facebook'),
       'secret' => $this->config->item('facebook_secret_key', 'facebook'),
       'fileUpload' => true,
 );

我希望这有帮助:-)

© www.soinside.com 2019 - 2024. All rights reserved.