1

这是我使用 LightOpenID 提供程序脚本登录 Stack 后遇到的错误。

OpenID 提供者针对发现信息不匹配的标识符发出断言。

Assertion endpoint info: 
ClaimedIdentifier: http ://sub.mydomain.net/?cgillis 
ProviderLocalIdentifier: http ://sub.mydomain.net/?cgillis 
ProviderEndpoint: http ://sub.mydomain.net/ 
OpenID version: 2.0 Service Type URIs: 

Discovered endpoint info: [{ 
ClaimedIdentifier: http ://specs.openid.net/auth/2.0/identifier_select        
ProviderLocalIdentifier: http ://specs.openid.net/auth/2.0/identifier_select    
ProviderEndpoint: http ://sub.mydomain.net/ 
OpenID version: 2.0 Service Type URIs: http ://specs.openid.net/auth/2.0/server },] 

提供者脚本:https ://gist.github.com/1072612

我应该注意提供者已将 select_id 设置为 true。如果设置为 false,一切正常。

4

1 回答 1

1

基本上,问题在于您select_id = true为身份网址设置。如果仅将 checkid() 返回的 url 设置为 false,它将按预期工作。

example.php有关如何解决此问题的示例,请参阅存储库中的 __construct() 。

您还应该看到Provider wiki 页面和相关的错误报告

于 2011-07-17T12:37:16.713 回答