0

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

我还使用openid 选择器从列表中选择 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, '姓氏');
$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, '用户名');

$ax = 新的 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);

谷歌给了我所有请求的属性,但雅虎没有(正如这里所说,雅虎现在支持属性交换)。
雅虎是否也对属性交换设置了任何限制。(他们允许有限的网站访问 openid 的 sreg 扩展)。:(

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

谢谢

4

1 回答 1

1

雅虎的问题解决了!!!在这里查看:php-openID 不适用于 Yahoo

于 2010-04-12T08:20:00.973 回答