EOAuthUserIdentity获取令牌时出错

时间:2015-01-27 06:30:55

标签: php yii oauth

我正在使用jorgebg/yii-eoauth库。我使用Yii EAuth extension的库。 By requirements yii eauth

要求

  • Yii 1.1或以上
  • PHP curl extension
  • loid extension
  • EOAuth扩展程序

好吧,我遇到了this problem。我在本地用linkedin帐户检查了它(没有社交帐户在本地服务器上工作,除了linkedin),它完美无缺。但登录系统在服务器上不起作用。在这种情况下你能帮帮我吗?提前谢谢!

我没有在这里编写代码,因为我认为,问题不依赖于我的代码。如果不是,我可以在这里放置必要的代码。

修改

错误是:

Argument 1 passed to EOAuthUtils::GetAccessToken() must be an instance of
 OAuthConsumer, instance of __PHP_Incomplete_Class given, called in 
protected/extensions/eoauth/EOAuthUserIdentity.php on line 138 and defined

在EOAuthUserIdentity.php的第138行写道:

// Upgrade to access token.
$token = EOAuthUtils::GetAccessToken($consumer, $token, $oauthVerifier,
                    $this->provider->access_token_endpoint);

我在上面的代码之前放了logger pre($consumer,1);。我在当地:

OAuthConsumer Object
(
    [key] => 7........k
    [secret] => s........r
    [callback_url] => 
)

我在服务器上:

__PHP_Incomplete_Class Object
(
    [__PHP_Incomplete_Class_Name] => OAuthConsumer
    [key] => 7.........k
    [secret] => s........r
    [callback_url] => 
)

本地和服务器上的php版本

1 个答案:

答案 0 :(得分:3)

在反序列化对象之前需要加载类。如果你不这样做,对象反序列化为__PHP_Incomplete_Class。

请参阅PHP problem with "__php_incomplete_class"