首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >facebook api登录问题,令牌不存在

facebook api登录问题,令牌不存在
EN

Stack Overflow用户
提问于 2016-09-19 20:12:12
回答 1查看 208关注 0票数 0

我正在使用当前的Facebook API php sdk登录与回调URL,代码在我的本地机器是完美的工作,但当我把它放在服务器上,并更改链接到新的域名它不再工作,回调URL没有从应用程序获得任何令牌任何帮助请这是我的代码

代码语言:javascript
复制
<?php 
require_once 'facebook-php-sdk-5/src/Facebook/autoload.php';
$fb = new Facebook\Facebook([
  'app_id' => 'appid',
  'app_secret' => 'appsecret',
  'default_graph_version' => 'v2.7',
]);

session_start();
//session_destroy(); exit;

$helper = $fb->getRedirectLoginHelper();
$permissions = ['email', 'publish_actions']; // optional


# login-callback.php

try {
  $accessToken = $helper->getAccessToken();

} catch(Facebook\Exceptions\FacebookResponseException $e) {
  // When Graph returns an error
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
  // When validation fails or other local issues
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}

if(isset($_GET['fb_email'])) {

    echo '<a>Facebook!</a>';

    if(!empty($_GET['fb_email']) and filter_var($_GET['fb_email'], FILTER_VALIDATE_EMAIL)) {



        include_once 'function file';
        $name=$_SESSION['fb_user_info']['name'];
        $email=$_GET['fb_email'];
        $id_network=$_SESSION['fb_user_info']['id'];
        $network="facebook";
        $res=functionname($parameters);
        if($res==0){
          //echo "<script>alert('ajouter avec succes');</script>";
          header("location:etape-1.php");
        }
        else{
          //echo "<script>alert('id existe deja ');</script>";
          header("location:etape-1.php");
        }
    }

}

else if (isset($accessToken)) {

    $_SESSION['facebook_access_token'] = (string) $accessToken;


    try {
      // Returns a `Facebook\FacebookResponse` object
      $response = $fb->get('/me?fields=id,name,email', $_SESSION['facebook_access_token']);
    } catch(Facebook\Exceptions\FacebookResponseException $e) {
      echo 'Graph returned an error: ' . $e->getMessage();
      exit;
    } catch(Facebook\Exceptions\FacebookSDKException $e) {
      echo 'Facebook SDK returned an error: ' . $e->getMessage();
      exit;
    }

    $user = $response->getGraphUser();
    $_SESSION['fb_user_info']=$user;


    echo '<a>Facebook!</a>';


    if($user['email']=="" or $user['email']=="undefined" or is_null($user['email'])) {
        header('location:?fb_email=notfound');
    }
    else {
        include_once 'function file';
        $name=$user['name'];
        $email=$user['email'];
        $id_network=$user['id'];
        $network="facebook";
        $res=functionname($parameters);
        if($res==0){
          //echo "<script>alert('ajouter avec succes');</script>";
          header("location:etape-1.php");
        }
        else{
          //echo "<script>alert('id existe deja ');</script>";
          header("location:etape-1.php");
        }
    }

}
else {

    /*$loginUrl = $helper->getLoginUrl(
        array('scope'         => 'publish_actions,email')
    );*/
    $loginUrl = $helper->getLoginUrl('http://callbacklink',
                    array(
                'scope'         => 'email,publish_actions'
            )
        );
    echo '<a href="' . $loginUrl . '" id="loginFacebook">Facebook!</a>';
}

?>

这是链接,如果你想测试http://jeu.reseaubmwrecrute.com/jeu.php使用facebook连接

EN

回答 1

Stack Overflow用户

发布于 2017-02-13 01:37:19

将php.ini更改为allow_url_fopen=on,您应该能够从该站点进行访问。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39572887

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档