雅虎的属性交换 - >空白数据即将到来

时间:2010-01-22 06:34:10

标签: php openid yahoo-oauth attribute-exchange

我正在尝试为我的网站构建openid登录系统。为此,我使用了JanRain's php openid library v 2.1.3。

我也在使用openid selector从列表中选择openid提供程序。

我首先创建了需要从提供程序获取的属性数组,如下所示:

$attribute[] = Auth_OpenID_AX_AttrInfo::make('http://axschema.org/contact/email',2,1, 'email');
$attribute[] = Auth_OpenID_AX_AttrInfo::make('http://axschema.org/namePerson/first',1,1, 'firstname');
$attribute[] = Auth_OpenID_AX_AttrInfo::make('http://axschema.org/namePerson/last',1,1, 'lastname');
$attribute[] = Auth_OpenID_AX_AttrInfo::make('http://axschema.org/namePerson',1,1, 'fullname');
$attribute[] = Auth_OpenID_AX_AttrInfo::make('http://axschema.org/namePerson/friendly',1,1, 'username');

$ax = new Auth_OpenID_AX_FetchRequest;

foreach($attribute as $attr)
{
    $ax->add($attr);
}
$auth_request->addExtension($ax);


在finish_auth.php文件中,我写了这个来获取返回的属性

$ax = new Auth_OpenID_AX_FetchResponse();
$obj = $ax->fromSuccessResponse($response);

Google向我提供了所有要求的属性,但雅虎没有(如 here 所述,雅虎现在支持属性交换)。
雅虎是否也在属性交换上设置了限制。 (他们给有限的网站访问openid的sreg扩展名)。 :(

请帮助我,我被困在这里。

由于

1 个答案:

答案 0 :(得分:1)

雅虎问题解决了! 在这里查看:php-openID doesn't work with Yahoo