我正在尝试使用PHP-openid库在我的网站中实现openID.
其包中的基本消费者示例不适用于Google和Yahoo.
我在这里找到了Google解决方案:
Example usage of AX in PHP OpenID
但它仍不适用于雅虎! .
我怎么能让它有效?
其包中的基本消费者示例不适用于Google和Yahoo.
我在这里找到了Google解决方案:
Example usage of AX in PHP OpenID
但它仍不适用于雅虎! .
我怎么能让它有效?
哇它现在解决了!!!!!
原文链接:/php/137179.html我追踪了这些功能,发现了问题.那就是….
在我使用的“try_auth.PHP”文件中
"$attribute[] = Auth_OpenID_AX_AttrInfo::make('http://axschema.org/contact/email',2,1,'email');"
从提供商处获取用户电子邮件.它可以在Google上运行正常,因为Google会忽略’2′(请求的电子邮件地址数),但在Yahoo!它生成[count.email] => 2为它(在getSignedNS函数中)和在Yahoo响应中没有count.email的条目.它导致在Yahoo的getSignedNS中返回null.
我变了
"$attribute[] = Auth_OpenID_AX_AttrInfo::make('http://axschema.org/contact/email','email');"
至
"$attribute[] = Auth_OpenID_AX_AttrInfo::make('http://axschema.org/contact/email','email');"
它现在工作正常,并返回我们要求的两个提供商!
大声笑…