Facebook和Twitter API有什么问题?

时间:2011-09-30 01:47:22

标签: facebook-graph-api facebook twitter

还有其他人注意到facebook和twitters API无效吗?

对于Facebook,即使我允许我的应用程序访问我的墙

$facebook->getUser()

始终为0 ...当我尝试打开 getLoginUrl 时,只需打开弹出窗口并立即将其重定向到成功返回链接...

这是代码:

require_once 'src/base_facebook.php';
require_once 'src/facebook.php';

$app_id = 'xxx';
$app_secret = 'xxx';

$facebook = new Facebook(array(
  'appId'  => $app_id,
  'secret' => $app_secret,
  'oauth' => true,
  'cookie' => true
));

$req_perms = "publish_stream";

$user = $facebook->getUser();

if (!$user)
    {
    $loginUrl = $facebook->getLoginUrl(array('display' => 'popup', 'redirect_uri' => 'http://xxxx.com/return_close.php?success=1', 'cancel_url' => 'http://xxxx.com/return_close.php?success=0','req_perms' => $req_perms, 'scope' => $req_perms));
    }

而对于Twitter来说,就像有人输入错误的链接... 当我打开 getAuthorizeURL 时,当我登录时,会将我重定向到此网址:

https://twitter.comoauth_callback/?oauth_token=yA2xjLsVRm9tIuVEysXnCV8R7TISW8tF94uznn7zlw&oauth_verifier=Io1N2I8zOEzJeBWI77WXFMqmMRNDfCrXZGQxXmxJLbI

是的, https://twitter.comoauth_callback/ 是对的,没有/经过.com,它在一起,所以我找不到页面...

这就像两个API都有严重的问题...... Facebook有时会工作,有时却不工作,它有很多错误......

从OFFICIAL GitHub页面下载的Facebook库。尝试过的版本:

v3.1.1
v3.1.0
v3.0.1

这些都不起作用......


更新

返回网址(redirect_uri)必须将facebook类列入文件...

有很多例子/文件,没有人解释过......

所以,Facebook修好了... Twitter还没有工作......


1 个答案:

答案 0 :(得分:4)

嗯,API中没有任何内容。你从哪里得到上面的代码?如果你拿出它然后根据什么资源?

首先,看一下 OFFICIAL PHP-SDK的example,您会注意到以下内容:

  1. 仅包含facebook.php文件,为什么不包括base_facebook.php?好吧,因为它包含在facebook.php文件中!
  2. 开发人员曾经使用req_perms但现在要求您只需要使用scope
  3. 的权限
  4. 了解Facebook()课程所期望的参数base_facebook.phpappIdsecretfileUpload < / LI>
  5. 如果您知道自己在做什么,请仅使用display参数!
  6. 在代码中使用适当的缩进,这会让您的生活(和其他人!)变得更加容易!
  7. 这就是说,这是对你的代码的重写:

    require 'src/facebook.php';
    
    $app_id = 'xxx';
    $app_secret = 'xxx';
    
    $facebook = new Facebook(array(
      'appId'  => $app_id,
      'secret' => $app_secret
    ));
    
    $req_perms = "publish_stream";
    
    $user = $facebook->getUser();
    
    if (!$user) {
        $loginUrl = $facebook->getLoginUrl(array('display' => 'popup', 'redirect_uri' => 'http://xxxx.com/return_close.php?success=1', 'cancel_url' => 'http://xxxx.com/return_close.php?success=0', 'scope' => $req_perms));
    }