【问题标题】:Facebook API showing "The parameter app_id is required"Facebook API 显示“需要参数 app_id”
【发布时间】:2014-03-02 12:57:39
【问题描述】:

我写了正确的 AppID 和 APP secret,但是当我在浏览器上运行它时,Facebook 说“需要参数 app_id”

此代码是否有任何错误,或者我错过了一些信息? 链接在这里 www.smmstest.base.pk/

<?php 
require 'libs/facebook.php';
$facebook = new Facebook(array(
'appID' => '********************',
'secret' => '*************************',
'cookie' => true
));
   $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();
   }
   ?>


<!doctype>
<html>
<head>
   <title>Fan page login</title>
</head>



   <body>

   <?php if ($user): ?>
      <a href="<?php echo $logoutUrl; ?>">Logout</a>
    <?php else: ?>
      <div>

        <a href="<?php echo $statusUrl; ?>">Check the login status</a>
      </div>
      <div>
        <a href="<?php echo $loginUrl; ?>">Login with Facebook</a>
      </div>
    <?php endif ?>

</body>

</html>

【问题讨论】:

  • 可能是错字? app_id != appID
  • 只有一种方法可以找出答案。

标签: php facebook-php-sdk


【解决方案1】:

https://github.com/facebook/facebook-php-sdk

require 'facebook-php-sdk/src/facebook.php';

$facebook = new Facebook(array(
  'appId'  => 'YOUR_APP_ID',
  'secret' => 'YOUR_APP_SECRET',
));

确保您使用来自最新 PHP SDK 的代码。如果您正确编写“appId”,它将将该参数添加到对 Facebook 服务器的每次调用(内部为“app_id”)。

【讨论】:

  • 在正文结束标记和 html 结束标记之间有一些东西 - 至少在开发时应该认真删除广告。
  • 整个页面包含很多错误,最好在接近 Facebook 内容之前修复这些错误。缺少 App-Id 是另一回事,可能是因为 App 中的一些错误设置。您确实设置了正确的 App-Id 和 App-Secret,对吧?
  • ok :) facebook 工作正常你能告诉我如何让用户登录我的应用程序吗?上面写着允许和不允许。
  • 这应该可以通过您的“使用 Facebook 登录”链接实现。它应该将用户重定向到授权。看看我在答案中发布的链接,如果你向下滚动,你会看到“使用”部分,包括登录和东西。
  • 我明白了,有一个错误:“应用程序未设置:此应用程序的开发人员尚未正确设置此应用程序以进行 Facebook 登录” - 好吧,我想这涵盖了问题:stackoverflow.com/questions/21329250/…
【解决方案2】:

把它改成

require 'libs/facebook.php';
$facebook = new Facebook(array(
'appID' => '********************',
'secret' => '*************************',
'cookie' => true

appID 更改为 appId,它应该可以工作

【讨论】:

    猜你喜欢
    • 2015-04-10
    • 1970-01-01
    • 1970-01-01
    • 2012-01-29
    • 1970-01-01
    • 2015-10-16
    • 1970-01-01
    • 2015-03-28
    • 1970-01-01
    相关资源
    最近更新 更多