Php 从Facebook身份验证重定向中删除参数

Php 从Facebook身份验证重定向中删除参数,php,facebook,Php,Facebook,我使用PHPSDK并遵循示例 当我使用Facebook登录并授予访问权限时,该页面将重定向到我的当前页面,但url包含state和code。如何避免显示这些参数 代码如下: "oauth.php": <?php require 'sdk/facebook.php'; $facebook = new Facebook(array(XXX,XXX)); $user = $facebook->getUser(); if ($user) { try { $user_profil

我使用PHPSDK并遵循示例

当我使用Facebook登录并授予访问权限时,该页面将重定向到我的当前页面,但url包含
state
code
。如何避免显示这些参数

代码如下:

"oauth.php":
<?php
require 'sdk/facebook.php';

$facebook = new Facebook(array(XXX,XXX));
$user = $facebook->getUser();
if ($user) {
  try {
    $user_profile = $facebook->api('/me');
  } catch (FacebookApiException $e) {
    error_log($e);
    $user = null;
  }
}

if ($user) {
  $logoutUrl = $facebook->getLogoutUrl();
} else {
  $loginUrl = $facebook->getLoginUrl($params);
}
?>

+++++++++++++++++++
"index.php":

<?php include 'oauth.php'; ?>
<!DOCTYPE html>
<html>
<head></head>
<body>
  <div>
  <?php if ($user): ?>
    <img src="https://graph.facebook.com/<?php echo $user; ?>/picture">
  <?php else: ?>
    <a href="<?php echo $loginUrl; ?>">Login with Facebook</a>
  <?php endif ?>
  </div>
</body>
</html>
“oauth.php”:
+++++++++++++++++++
“index.php”:
/图片“>

尝试在代码末尾添加标题(身份验证后)


尝试在代码末尾添加标头(身份验证后)


如何获取
$currentPage
?这一行放在哪里?$currentPage是facebook重定向回的页面,或$\u SERVER['HTTP\u REFERER']。当然,只有在成功验证后,才将这一行放在facebook重定向回的页面的末尾。只需使用
facebook::getCurrentUrl()
–该方法旨在从当前页面的URL中删除Facebook特定的参数(状态、代码等),同时保留您自己的URL参数(只要没有名称冲突)。它返回一个“已清除的”您可以重定向到的URL。如何获取
$currentPage
?这一行放在哪里?$currentPage是facebook重定向回的页面,或$\u SERVER['HTTP\u REFERER']。请将这一行放在facebook重定向回的页面的末尾,当然,只有在成功验证后才可以使用
facebook::getCurrentUrl()
–该方法旨在从当前页面的URL中删除Facebook特定的参数(状态、代码等),同时保留您自己的URL参数(只要不存在名称冲突)。它返回一个“已清理”的URL,您可以重定向到该URL。
   header('Location:'.$currentPage);